@jinn-network/client 0.1.8 → 0.1.9-canary.023faefb
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/CONTRIBUTING.md +2 -2
- package/README.md +6 -0
- package/deployments/deployment-phase1b-mech-baseSepolia-fast.json +3 -3
- package/deployments/deployment-stolas-l2-baseSepolia-fast.json +23 -3
- package/deployments/deployment-task-coordinator-router-v3-baseSepolia-fast.json +34 -6
- package/dist/adapters/mech/adapter.d.ts +31 -1
- package/dist/adapters/mech/adapter.js +126 -53
- package/dist/adapters/mech/adapter.js.map +1 -1
- package/dist/adapters/mech/contracts.d.ts +174 -13
- package/dist/adapters/mech/contracts.js +99 -49
- 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 +77 -1
- package/dist/adapters/mech/safe.js.map +1 -1
- package/dist/adapters/mech/types.d.ts +5 -130
- package/dist/adapters/mech/types.js +9 -65
- package/dist/adapters/mech/types.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 +19 -3
- package/dist/api/bootstrap-endpoint.js +4 -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 +26 -17
- package/dist/api/gather-status.js +62 -520
- package/dist/api/gather-status.js.map +1 -1
- package/dist/api/harness-auth-status-endpoint.d.ts +21 -0
- package/dist/api/harness-auth-status-endpoint.js +17 -0
- package/dist/api/harness-auth-status-endpoint.js.map +1 -0
- package/dist/api/launcher-endpoints.js +6 -1
- package/dist/api/launcher-endpoints.js.map +1 -1
- package/dist/api/launcher-status.d.ts +2 -0
- package/dist/api/launcher-status.js.map +1 -1
- package/dist/api/launcher-tasks.d.ts +47 -0
- package/dist/api/launcher-tasks.js +88 -3
- package/dist/api/launcher-tasks.js.map +1 -1
- package/dist/api/loop-completion-build.d.ts +79 -0
- package/dist/api/loop-completion-build.js +154 -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/portfolio-v0-build.d.ts +2 -1
- package/dist/api/portfolio-v0-build.js +5 -7
- package/dist/api/portfolio-v0-build.js.map +1 -1
- package/dist/api/prediction-v1-build.d.ts +2 -2
- package/dist/api/prediction-v1-build.js +5 -7
- package/dist/api/prediction-v1-build.js.map +1 -1
- package/dist/api/rewards-build.d.ts +8 -1
- package/dist/api/rewards-build.js +32 -4
- package/dist/api/rewards-build.js.map +1 -1
- package/dist/api/rewards-endpoint.d.ts +12 -0
- package/dist/api/rewards-endpoint.js +46 -0
- package/dist/api/rewards-endpoint.js.map +1 -0
- package/dist/api/server.d.ts +6 -16
- package/dist/api/server.js +29 -26
- package/dist/api/server.js.map +1 -1
- package/dist/api/setup-endpoints.d.ts +45 -0
- package/dist/api/setup-endpoints.js +271 -52
- 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 +71 -94
- package/dist/api/status-build.js +11 -77
- 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/api/task-run-routing.d.ts +1 -1
- package/dist/api/task-runs-build.d.ts +2 -2
- package/dist/api/task-runs-build.js +5 -7
- package/dist/api/task-runs-build.js.map +1 -1
- package/dist/bin/jinn-distil-mcp.js +813 -0
- package/dist/bin/jinn-layer.js +12568 -0
- package/dist/build-info.json +4 -4
- package/dist/build-meta.json +1 -1
- package/dist/captures/distil-export.d.ts +54 -0
- package/dist/captures/distil-export.js +135 -0
- package/dist/captures/distil-export.js.map +1 -0
- package/dist/captures/ingest.d.ts +21 -0
- package/dist/captures/ingest.js +144 -0
- package/dist/captures/ingest.js.map +1 -0
- package/dist/captures/live-publisher.d.ts +9 -0
- package/dist/captures/live-publisher.js +5 -3
- package/dist/captures/live-publisher.js.map +1 -1
- package/dist/captures/publish.d.ts +15 -0
- package/dist/captures/publish.js +17 -7
- package/dist/captures/publish.js.map +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 +36 -4
- 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 +39 -10
- 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/commands/update.js +8 -0
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/commands/version.js +4 -0
- package/dist/cli/commands/version.js.map +1 -1
- package/dist/cli/execution-context.js +2 -1
- package/dist/cli/execution-context.js.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/introspection-context.js +0 -3
- package/dist/cli/introspection-context.js.map +1 -1
- package/dist/config.d.ts +158 -541
- package/dist/config.js +190 -197
- package/dist/config.js.map +1 -1
- package/dist/contracts/abis.d.ts +100 -0
- package/dist/contracts/abis.js +58 -0
- package/dist/contracts/abis.js.map +1 -0
- package/dist/contracts/addresses.d.ts +36 -0
- package/dist/contracts/addresses.js +60 -0
- package/dist/contracts/addresses.js.map +1 -0
- package/dist/corpus/acquire.d.ts +7 -6
- package/dist/corpus/acquire.js +10 -10
- package/dist/corpus/acquire.js.map +1 -1
- package/dist/corpus/fetch-artifact.d.ts +21 -0
- package/dist/corpus/fetch-artifact.js +33 -0
- package/dist/corpus/fetch-artifact.js.map +1 -0
- package/dist/corpus/index.d.ts +2 -2
- package/dist/corpus/onchain-query.d.ts +0 -1
- package/dist/corpus/onchain-query.js +2 -5
- package/dist/corpus/onchain-query.js.map +1 -1
- package/dist/corpus/route-resolver.d.ts +3 -3
- package/dist/corpus/route-resolver.js +3 -3
- 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 +27 -9
- 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 +39 -25
- package/dist/daemon/creator.js.map +1 -1
- package/dist/daemon/daemon.d.ts +15 -10
- package/dist/daemon/daemon.js +95 -41
- package/dist/daemon/daemon.js.map +1 -1
- package/dist/daemon/delivery-watcher.d.ts +9 -0
- package/dist/daemon/delivery-watcher.js +24 -1
- package/dist/daemon/delivery-watcher.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/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 +89 -0
- package/dist/daemon/loop-heartbeat.js +75 -0
- package/dist/daemon/loop-heartbeat.js.map +1 -0
- package/dist/{api/peers.js → daemon/peer-sync.js} +3 -1
- package/dist/daemon/peer-sync.js.map +1 -0
- package/dist/daemon/reward-claim-loop.js +28 -10
- package/dist/daemon/reward-claim-loop.js.map +1 -1
- package/dist/daemon/skip-log-dedup.d.ts +1 -1
- package/dist/daemon/skip-log-dedup.js +3 -0
- package/dist/daemon/skip-log-dedup.js.map +1 -1
- package/dist/daemon/spend-cap-gate.d.ts +0 -6
- package/dist/daemon/spend-cap-gate.js +1 -8
- package/dist/daemon/spend-cap-gate.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-B_5Cb-ZH.js +161 -0
- package/dist/dashboard/assets/index-D7rvJRNa.css +1 -0
- package/dist/dashboard/index.html +2 -2
- package/dist/discovery/http.d.ts +17 -0
- package/dist/discovery/http.js +378 -26
- package/dist/discovery/http.js.map +1 -1
- package/dist/discovery/onchain.js +174 -10
- package/dist/discovery/onchain.js.map +1 -1
- package/dist/discovery/types.d.ts +149 -0
- package/dist/discovery/types.js +40 -0
- package/dist/discovery/types.js.map +1 -1
- package/dist/discovery/with-fallback.js +24 -0
- package/dist/discovery/with-fallback.js.map +1 -1
- package/dist/earning/bootstrap-run.d.ts +25 -0
- package/dist/earning/bootstrap-run.js +315 -0
- package/dist/earning/bootstrap-run.js.map +1 -0
- package/dist/earning/bootstrap.d.ts +31 -11
- package/dist/earning/bootstrap.js +123 -212
- package/dist/earning/bootstrap.js.map +1 -1
- package/dist/earning/contracts.d.ts +2 -232
- package/dist/earning/contracts.js +16 -205
- package/dist/earning/contracts.js.map +1 -1
- package/dist/earning/faucet-topup-store.d.ts +41 -0
- package/dist/earning/faucet-topup-store.js +89 -0
- package/dist/earning/faucet-topup-store.js.map +1 -0
- 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 +12 -45
- package/dist/earning/safe-adapter.js.map +1 -1
- package/dist/earning/steps/context.d.ts +42 -0
- package/dist/earning/steps/context.js +4 -0
- package/dist/earning/steps/context.js.map +1 -0
- package/dist/earning/steps/fleet-identity-register.d.ts +4 -0
- package/dist/earning/steps/fleet-identity-register.js +65 -0
- package/dist/earning/steps/fleet-identity-register.js.map +1 -0
- package/dist/earning/steps/fleet-safe-deploy.d.ts +4 -0
- package/dist/earning/steps/fleet-safe-deploy.js +62 -0
- package/dist/earning/steps/fleet-safe-deploy.js.map +1 -0
- package/dist/earning/steps/fleet-safe-predict.d.ts +4 -0
- package/dist/earning/steps/fleet-safe-predict.js +18 -0
- package/dist/earning/steps/fleet-safe-predict.js.map +1 -0
- package/dist/earning/steps/receipt-parsing.d.ts +12 -0
- package/dist/earning/steps/receipt-parsing.js +71 -0
- package/dist/earning/steps/receipt-parsing.js.map +1 -0
- package/dist/earning/stolas-claim.js +8 -8
- package/dist/earning/stolas-claim.js.map +1 -1
- package/dist/earning/{jinn-rewards.d.ts → stolas-staking.d.ts} +4 -8
- package/dist/earning/{jinn-rewards.js → stolas-staking.js} +6 -10
- package/dist/earning/stolas-staking.js.map +1 -0
- package/dist/earning/testnet-setup-migration.d.ts +1 -0
- package/dist/earning/testnet-setup-migration.js +7 -2
- package/dist/earning/testnet-setup-migration.js.map +1 -1
- 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/earning/viem-clients.d.ts +3 -19
- package/dist/earning/viem-clients.js +4 -31
- package/dist/earning/viem-clients.js.map +1 -1
- package/dist/erc8004/addresses.d.ts +6 -5
- package/dist/erc8004/addresses.js +7 -5
- package/dist/erc8004/addresses.js.map +1 -1
- package/dist/erc8004/identity.d.ts +12 -1
- package/dist/erc8004/identity.js +31 -0
- package/dist/erc8004/identity.js.map +1 -1
- package/dist/erc8004/index.d.ts +1 -1
- package/dist/erc8004/index.js +1 -1
- package/dist/erc8004/index.js.map +1 -1
- package/dist/eval/capability-slate.d.ts +54 -0
- package/dist/eval/capability-slate.js +116 -0
- package/dist/eval/capability-slate.js.map +1 -0
- package/dist/eval/capability-stats.d.ts +39 -0
- package/dist/eval/capability-stats.js +123 -0
- package/dist/eval/capability-stats.js.map +1 -0
- package/dist/eval/contested-band.d.ts +18 -0
- package/dist/eval/contested-band.js +19 -0
- package/dist/eval/contested-band.js.map +1 -0
- package/dist/eval/corpus-index.d.ts +21 -0
- package/dist/eval/corpus-index.js +55 -0
- package/dist/eval/corpus-index.js.map +1 -0
- package/dist/eval/disjointness.d.ts +26 -0
- package/dist/eval/disjointness.js +67 -0
- package/dist/eval/disjointness.js.map +1 -0
- 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/mcnemar-power.d.ts +14 -0
- package/dist/eval/mcnemar-power.js +40 -0
- package/dist/eval/mcnemar-power.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/auth-source.d.ts +51 -0
- package/dist/harnesses/auth-source.js +155 -0
- package/dist/harnesses/auth-source.js.map +1 -0
- 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 +34 -1
- package/dist/harnesses/engine/engine.js +91 -11
- package/dist/harnesses/engine/engine.js.map +1 -1
- package/dist/harnesses/engine/packaging.js +5 -5
- package/dist/harnesses/engine/packaging.js.map +1 -1
- package/dist/harnesses/engine/persistence.d.ts +19 -61
- package/dist/harnesses/engine/persistence.js +28 -0
- package/dist/harnesses/engine/persistence.js.map +1 -1
- package/dist/harnesses/impls/_evaluator-base.d.ts +48 -0
- package/dist/harnesses/impls/_evaluator-base.js +35 -0
- package/dist/harnesses/impls/_evaluator-base.js.map +1 -0
- 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/claude-mcp-prediction/index.d.ts +2 -3
- package/dist/harnesses/impls/claude-mcp-prediction/index.js +29 -99
- package/dist/harnesses/impls/claude-mcp-prediction/index.js.map +1 -1
- package/dist/harnesses/impls/claude-mcp-prediction/mcp-tools.js +4 -21
- package/dist/harnesses/impls/claude-mcp-prediction/mcp-tools.js.map +1 -1
- package/dist/harnesses/impls/claude-mcp-prediction/session-orchestrator.d.ts +2 -0
- package/dist/harnesses/impls/claude-mcp-prediction/session-orchestrator.js +1 -1
- package/dist/harnesses/impls/claude-mcp-prediction/session-orchestrator.js.map +1 -1
- package/dist/harnesses/impls/claude-mcp-prediction-apy/index.js +30 -79
- package/dist/harnesses/impls/claude-mcp-prediction-apy/index.js.map +1 -1
- package/dist/harnesses/impls/claude-mcp-prediction-apy/mcp-tools.js +4 -19
- package/dist/harnesses/impls/claude-mcp-prediction-apy/mcp-tools.js.map +1 -1
- package/dist/harnesses/impls/claude-mcp-prediction-apy/session-orchestrator.d.ts +2 -0
- package/dist/harnesses/impls/claude-mcp-prediction-apy/session-orchestrator.js +1 -1
- package/dist/harnesses/impls/claude-mcp-prediction-apy/session-orchestrator.js.map +1 -1
- package/dist/harnesses/impls/claude-mcp-shared/mcp-server-script.d.ts +39 -0
- package/dist/harnesses/impls/claude-mcp-shared/mcp-server-script.js +62 -0
- package/dist/harnesses/impls/claude-mcp-shared/mcp-server-script.js.map +1 -0
- package/dist/harnesses/impls/claude-mcp-shared/mcp-server.d.ts +40 -0
- package/dist/harnesses/impls/claude-mcp-shared/mcp-server.js +44 -0
- package/dist/harnesses/impls/claude-mcp-shared/mcp-server.js.map +1 -0
- package/dist/harnesses/impls/claude-mcp-shared/single-session-harness.d.ts +56 -0
- package/dist/harnesses/impls/claude-mcp-shared/single-session-harness.js +79 -0
- package/dist/harnesses/impls/claude-mcp-shared/single-session-harness.js.map +1 -0
- 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 +25 -3
- package/dist/harnesses/impls/hermes-agent/harness.js +89 -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 +10 -1
- 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/adapters/codex-code.d.ts +11 -1
- package/dist/harnesses/impls/learner/adapters/codex-code.js +130 -15
- package/dist/harnesses/impls/learner/adapters/codex-code.js.map +1 -1
- package/dist/harnesses/impls/learner/harness.d.ts +29 -1
- package/dist/harnesses/impls/learner/harness.js +85 -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/portfolio-v0-evaluator/index.d.ts +5 -15
- package/dist/harnesses/impls/portfolio-v0-evaluator/index.js +10 -29
- package/dist/harnesses/impls/portfolio-v0-evaluator/index.js.map +1 -1
- package/dist/harnesses/impls/prediction-apy-v0-evaluator/index.d.ts +5 -15
- package/dist/harnesses/impls/prediction-apy-v0-evaluator/index.js +10 -23
- package/dist/harnesses/impls/prediction-apy-v0-evaluator/index.js.map +1 -1
- package/dist/harnesses/impls/prediction-v0-evaluator/index.d.ts +5 -15
- package/dist/harnesses/impls/prediction-v0-evaluator/index.js +10 -25
- package/dist/harnesses/impls/prediction-v0-evaluator/index.js.map +1 -1
- package/dist/harnesses/impls/stub.d.ts +2 -2
- package/dist/harnesses/impls/stub.js +2 -2
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js +8 -0
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.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 +16 -0
- package/dist/harnesses/readiness-registry.js +28 -6
- package/dist/harnesses/readiness-registry.js.map +1 -1
- package/dist/harnesses/types.d.ts +26 -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/learner/verification-gate.d.ts +53 -0
- package/dist/learner/verification-gate.js +80 -0
- package/dist/learner/verification-gate.js.map +1 -0
- 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 +188 -566
- package/dist/main.js.map +1 -1
- package/dist/mcp/acquire-artifact.d.ts +3 -3
- package/dist/mcp/acquire-artifact.js +3 -3
- package/dist/mcp/operator-server.js +1 -1
- package/dist/mcp/operator-server.js.map +1 -1
- package/dist/mcp/server.js +5 -6
- package/dist/mcp/server.js.map +1 -1
- package/dist/monitoring/net-liveness.d.ts +143 -0
- package/dist/monitoring/net-liveness.js +301 -0
- package/dist/monitoring/net-liveness.js.map +1 -0
- package/dist/observability/emit-event.d.ts +1 -1
- package/dist/observability/emit-event.js +0 -4
- package/dist/observability/emit-event.js.map +1 -1
- package/dist/observability/progress.d.ts +11 -0
- package/dist/observability/progress.js +16 -0
- package/dist/observability/progress.js.map +1 -0
- package/dist/pilot/cost.d.ts +19 -0
- package/dist/pilot/cost.js +31 -0
- package/dist/pilot/cost.js.map +1 -0
- package/dist/pilot/instance.d.ts +20 -0
- package/dist/pilot/instance.js +19 -0
- package/dist/pilot/instance.js.map +1 -0
- package/dist/pilot/repo.d.ts +31 -0
- package/dist/pilot/repo.js +42 -0
- package/dist/pilot/repo.js.map +1 -0
- package/dist/pilot/solve.d.ts +22 -0
- package/dist/pilot/solve.js +37 -0
- package/dist/pilot/solve.js.map +1 -0
- package/dist/pilot/tally.d.ts +35 -0
- package/dist/pilot/tally.js +61 -0
- package/dist/pilot/tally.js.map +1 -0
- 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/plugins/local-trace-distiller/.claude-plugin/plugin.json +9 -0
- package/dist/plugins/local-trace-distiller/.codex-plugin/plugin.json +41 -0
- package/dist/plugins/local-trace-distiller/.mcp.json +8 -0
- package/dist/plugins/local-trace-distiller/README.md +27 -0
- package/dist/plugins/local-trace-distiller/jinn.plugin.json +36 -0
- package/dist/plugins/local-trace-distiller/skills/distill/SKILL.md +51 -0
- package/dist/preflight/deployment-readiness.d.ts +127 -0
- package/dist/preflight/deployment-readiness.js +308 -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/preflight/rpc-network.d.ts +10 -3
- package/dist/preflight/rpc-network.js +46 -13
- package/dist/preflight/rpc-network.js.map +1 -1
- package/dist/preflight/stable-cwd.d.ts +29 -0
- package/dist/preflight/stable-cwd.js +98 -0
- package/dist/preflight/stable-cwd.js.map +1 -0
- 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 +14 -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/credential.d.ts +2 -2
- package/dist/spend/credential.js +9 -3
- package/dist/spend/credential.js.map +1 -1
- package/dist/spend/record.js +12 -5
- package/dist/spend/record.js.map +1 -1
- package/dist/spend/spend-cap.d.ts +10 -0
- package/dist/spend/spend-cap.js +13 -0
- package/dist/spend/spend-cap.js.map +1 -0
- package/dist/spend/usage.js +39 -3
- package/dist/spend/usage.js.map +1 -1
- package/dist/store/store.d.ts +106 -5
- package/dist/store/store.js +194 -8
- package/dist/store/store.js.map +1 -1
- package/dist/trajectory/emit.d.ts +6 -0
- package/dist/trajectory/emit.js +9 -1
- package/dist/trajectory/emit.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/processors/identity-scrub.js +22 -3
- package/dist/trajectory/processors/identity-scrub.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/scrub/build.d.ts +46 -0
- package/dist/trajectory/scrub/build.js +76 -0
- package/dist/trajectory/scrub/build.js.map +1 -0
- package/dist/trajectory/scrub/emit-scrub.d.ts +41 -0
- package/dist/trajectory/scrub/emit-scrub.js +88 -0
- package/dist/trajectory/scrub/emit-scrub.js.map +1 -0
- package/dist/trajectory/scrub/key-policy.d.ts +20 -0
- package/dist/trajectory/scrub/key-policy.js +43 -0
- package/dist/trajectory/scrub/key-policy.js.map +1 -0
- package/dist/trajectory/scrub/layer2.d.ts +23 -0
- package/dist/trajectory/scrub/layer2.js +33 -0
- package/dist/trajectory/scrub/layer2.js.map +1 -0
- package/dist/trajectory/scrub/ml-pii-stage.d.ts +24 -0
- package/dist/trajectory/scrub/ml-pii-stage.js +43 -0
- package/dist/trajectory/scrub/ml-pii-stage.js.map +1 -0
- package/dist/trajectory/scrub/openredaction-stage.d.ts +178 -0
- package/dist/trajectory/scrub/openredaction-stage.js +269 -0
- package/dist/trajectory/scrub/openredaction-stage.js.map +1 -0
- package/dist/trajectory/scrub/pii-build.d.ts +31 -0
- package/dist/trajectory/scrub/pii-build.js +64 -0
- package/dist/trajectory/scrub/pii-build.js.map +1 -0
- package/dist/trajectory/scrub/pipeline.d.ts +37 -0
- package/dist/trajectory/scrub/pipeline.js +83 -0
- package/dist/trajectory/scrub/pipeline.js.map +1 -0
- package/dist/trajectory/scrub/plain-patterns-stage.d.ts +31 -0
- package/dist/trajectory/scrub/plain-patterns-stage.js +85 -0
- package/dist/trajectory/scrub/plain-patterns-stage.js.map +1 -0
- package/dist/trajectory/scrub/secretlint-stage.d.ts +35 -0
- package/dist/trajectory/scrub/secretlint-stage.js +250 -0
- package/dist/trajectory/scrub/secretlint-stage.js.map +1 -0
- package/dist/trajectory/scrub/transformers-detector.d.ts +35 -0
- package/dist/trajectory/scrub/transformers-detector.js +68 -0
- package/dist/trajectory/scrub/transformers-detector.js.map +1 -0
- package/dist/trajectory/scrub/types.d.ts +25 -0
- package/dist/trajectory/scrub/types.js +2 -0
- package/dist/trajectory/scrub/types.js.map +1 -0
- 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/trajectory/transcript-watcher.d.ts +26 -0
- package/dist/trajectory/transcript-watcher.js +33 -0
- package/dist/trajectory/transcript-watcher.js.map +1 -1
- package/dist/tx-retry.d.ts +12 -0
- package/dist/tx-retry.js +41 -12
- package/dist/tx-retry.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/skill-artifact.d.ts +442 -0
- package/dist/types/skill-artifact.js +137 -0
- package/dist/types/skill-artifact.js.map +1 -0
- package/dist/types/task-document.d.ts +315 -1
- package/dist/types/task-document.js +9 -1
- package/dist/types/task-document.js.map +1 -1
- package/dist/types/task-run-read-model.d.ts +21 -0
- package/dist/types/task-run-read-model.js +2 -0
- package/dist/types/task-run-read-model.js.map +1 -0
- package/dist/types/task-run.d.ts +75 -0
- package/dist/types/task-run.js +2 -0
- package/dist/types/task-run.js.map +1 -0
- package/dist/types/task.d.ts +29 -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/util/redact-rpc-urls.d.ts +1 -1
- package/dist/util/redact-rpc-urls.js +57 -2
- package/dist/util/redact-rpc-urls.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 +43 -28
- 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/local-trace-distiller/.claude-plugin/plugin.json +9 -0
- package/plugins/local-trace-distiller/.codex-plugin/plugin.json +41 -0
- package/plugins/local-trace-distiller/.mcp.json +8 -0
- package/plugins/local-trace-distiller/README.md +27 -0
- package/plugins/local-trace-distiller/jinn.plugin.json +36 -0
- package/plugins/local-trace-distiller/skills/distill/SKILL.md +51 -0
- package/plugins/swe-rebench-v2-runtime/hooks/hooks.json +16 -0
- package/plugins/swe-rebench-v2-runtime/hooks/session-start +74 -0
- package/deployments/deployment-jinn-mvi-l1-sepolia-fast.json +0 -55
- package/deployments/deployment-jinn-mvi-l1-sepolia.json +0 -55
- package/deployments/deployment-jinn-mvi-l2-baseSepolia.json +0 -13
- package/deployments/deployment-jinn-testnet-faucet-baseSepolia-fast.json +0 -15
- package/dist/api/peers.js.map +0 -1
- package/dist/daemon/jinn-claim-loop-canonical.d.ts +0 -207
- package/dist/daemon/jinn-claim-loop-canonical.js +0 -296
- package/dist/daemon/jinn-claim-loop-canonical.js.map +0 -1
- package/dist/daemon/jinn-claim-loop-mock.d.ts +0 -61
- package/dist/daemon/jinn-claim-loop-mock.js +0 -122
- package/dist/daemon/jinn-claim-loop-mock.js.map +0 -1
- package/dist/daemon/jinn-claim-loop-wiring.d.ts +0 -33
- package/dist/daemon/jinn-claim-loop-wiring.js +0 -40
- package/dist/daemon/jinn-claim-loop-wiring.js.map +0 -1
- package/dist/daemon/jinn-claim-loop.d.ts +0 -130
- package/dist/daemon/jinn-claim-loop.js +0 -328
- package/dist/daemon/jinn-claim-loop.js.map +0 -1
- package/dist/dashboard/assets/index-CzKxvMcU.css +0 -32
- package/dist/dashboard/assets/index-yVemxHot.js +0 -351
- package/dist/earning/jinn-rewards.js.map +0 -1
- package/dist/scripts/donation-consumption-acceptance.d.ts +0 -85
- package/dist/scripts/donation-consumption-acceptance.js +0 -1382
- package/dist/scripts/donation-consumption-acceptance.js.map +0 -1
- package/dist/x402/acquire.d.ts +0 -17
- package/dist/x402/acquire.js +0 -49
- package/dist/x402/acquire.js.map +0 -1
- package/dist/x402/facilitator.d.ts +0 -11
- package/dist/x402/facilitator.js +0 -52
- package/dist/x402/facilitator.js.map +0 -1
- package/dist/x402/handler.d.ts +0 -27
- package/dist/x402/handler.js +0 -236
- package/dist/x402/handler.js.map +0 -1
- /package/dist/{api/peers.d.ts → daemon/peer-sync.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe-adapter.js","sourceRoot":"","sources":["../../src/earning/safe-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,UAAU,EACV,IAAI,EACJ,KAAK,EACL,WAAW,GAIZ,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EACL,kBAAkB,EAClB,+BAA+B,EAE/B,eAAe,EACf,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAIxB;;;;;;;;;GASG;AACH,MAAM,iCAAiC,GAAG,SAAS,CAAC;AAEpD;;;sEAGsE;AACtE,MAAM,4CAA4C,GAAG,IAAI,CAAC;AAC1D,MAAM,8CAA8C,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"safe-adapter.js","sourceRoot":"","sources":["../../src/earning/safe-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type Address, type TransactionReceipt } from 'viem';
|
|
2
|
+
import type { ChainConfig } from '../contracts.js';
|
|
3
|
+
import type { FleetStateStore } from '../store.js';
|
|
4
|
+
import type { FleetState, ServiceState, StakingMode } from '../types.js';
|
|
5
|
+
import type { createJinnPublicClient, JinnOnchainNetwork } from '../viem-clients.js';
|
|
6
|
+
import type { bindAgentWalletToSafe } from '../agent-wallet-binding.js';
|
|
7
|
+
/**
|
|
8
|
+
* Read-only dependency bag handed to every extracted bootstrap step.
|
|
9
|
+
*
|
|
10
|
+
* Built fresh per step invocation by `FleetBootstrapper.stepContext()`. The
|
|
11
|
+
* spied helper closures (getStakingState, getBondTokenBalance,
|
|
12
|
+
* parseAgentIdFromReceipt, stolasPreflightCheck, sweepAbandonedSafeForService)
|
|
13
|
+
* dispatch back through the live instance at call time, so a `vi.spyOn`
|
|
14
|
+
* installed after construction is honoured. See the plan's "Binding rule".
|
|
15
|
+
*/
|
|
16
|
+
export interface StepContext {
|
|
17
|
+
readonly store: FleetStateStore;
|
|
18
|
+
readonly config: ChainConfig;
|
|
19
|
+
readonly publicClient: ReturnType<typeof createJinnPublicClient>;
|
|
20
|
+
readonly chain: JinnOnchainNetwork;
|
|
21
|
+
readonly stakingMode: StakingMode;
|
|
22
|
+
readonly targetServices: number;
|
|
23
|
+
readonly debug: boolean;
|
|
24
|
+
readonly env: NodeJS.ProcessEnv;
|
|
25
|
+
readonly safeBindingMaxAttempts: number;
|
|
26
|
+
readonly safeBindingRetryDelayMs: number;
|
|
27
|
+
readonly bindAgentWalletWithRetry: (args: Parameters<typeof bindAgentWalletToSafe>[0], label: string) => Promise<Awaited<ReturnType<typeof bindAgentWalletToSafe>>>;
|
|
28
|
+
readonly getServiceState: (serviceId: number) => Promise<number>;
|
|
29
|
+
readonly waitForSuccessfulTx: (txHash: string, label: string) => Promise<void>;
|
|
30
|
+
readonly firstServiceUpdate: (index: number, patch: Partial<ServiceState>) => Promise<ServiceState>;
|
|
31
|
+
readonly stakingAddressForService: (svc: ServiceState) => Address;
|
|
32
|
+
readonly shouldPreserveExistingSetup: (svc: ServiceState) => boolean;
|
|
33
|
+
readonly parseServiceIdFromReceipt: (receipt: TransactionReceipt) => Promise<number | null>;
|
|
34
|
+
readonly parseMultisigFromReceipt: (receipt: TransactionReceipt) => string | null;
|
|
35
|
+
readonly getStakingState: (serviceId: number, stakingAddress?: string | null) => Promise<number>;
|
|
36
|
+
readonly getBondTokenBalance: (address: string) => Promise<bigint>;
|
|
37
|
+
readonly parseAgentIdFromReceipt: (receipt: TransactionReceipt, identityRegistry: string) => string | null;
|
|
38
|
+
readonly stolasPreflightCheck: () => Promise<void>;
|
|
39
|
+
readonly sweepAbandonedSafeForService: (state: FleetState, mnemonic: string, serviceIndex: number, abandonedSafeAddress: string) => Promise<void>;
|
|
40
|
+
}
|
|
41
|
+
/** Checksum-address helper shared by step modules (mirrors bootstrap.ts). */
|
|
42
|
+
export declare const addr: (value: string) => Address;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/earning/steps/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAyC,MAAM,MAAM,CAAC;AAiEzE,6EAA6E;AAC7E,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,UAAU,CAAC,KAAK,CAAY,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { StepContext } from './context.js';
|
|
2
|
+
import type { FleetState } from '../types.js';
|
|
3
|
+
/** Mint the fleet agentId + bind Safe via setAgentWallet (ERC-1271). */
|
|
4
|
+
export declare function stepFleetIdentityRegister(ctx: StepContext, state: FleetState, mnemonic: string): Promise<FleetState>;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { encodeFunctionData, getAddress } from 'viem';
|
|
2
|
+
import { addr } from './context.js';
|
|
3
|
+
import { deriveAgentSigner } from '../wallet.js';
|
|
4
|
+
import { createJinnWalletClient } from '../viem-clients.js';
|
|
5
|
+
import { viemSendTransactionWithRetry, waitForTransactionReceiptWithRetry, } from '../../tx-retry.js';
|
|
6
|
+
import { IDENTITY_REGISTRY_ABI, IDENTITY_REGISTRY_ADDRESSES } from '../contracts.js';
|
|
7
|
+
/** Mint the fleet agentId + bind Safe via setAgentWallet (ERC-1271). */
|
|
8
|
+
export async function stepFleetIdentityRegister(ctx, state, mnemonic) {
|
|
9
|
+
const identityRegistry = ctx.config.identityRegistry ?? IDENTITY_REGISTRY_ADDRESSES[ctx.config.chainId];
|
|
10
|
+
if (!identityRegistry) {
|
|
11
|
+
throw new Error(`IdentityRegistry address not configured for chainId=${ctx.config.chainId}.`);
|
|
12
|
+
}
|
|
13
|
+
const fleetSafe = state.fleet_safe_address;
|
|
14
|
+
const agentSigner = deriveAgentSigner(mnemonic, 1);
|
|
15
|
+
const agentWallet = createJinnWalletClient(ctx.config.rpcUrl, ctx.chain, agentSigner);
|
|
16
|
+
// Mint agentId — empty agent URI for v0 (matches stepRegisterAgent §6.1 in spec).
|
|
17
|
+
const registerData = encodeFunctionData({
|
|
18
|
+
abi: IDENTITY_REGISTRY_ABI,
|
|
19
|
+
functionName: 'register',
|
|
20
|
+
args: [''],
|
|
21
|
+
});
|
|
22
|
+
console.error(`[fleet-bootstrap] Stage 1: minting fleet agentId ` +
|
|
23
|
+
`(IdentityRegistry=${identityRegistry}, agentEOA=${agentSigner.address})`);
|
|
24
|
+
const mintTxHash = await viemSendTransactionWithRetry(agentWallet, ctx.publicClient, {
|
|
25
|
+
account: agentSigner,
|
|
26
|
+
to: addr(identityRegistry),
|
|
27
|
+
data: registerData,
|
|
28
|
+
});
|
|
29
|
+
const mintReceipt = await waitForTransactionReceiptWithRetry(ctx.publicClient, mintTxHash);
|
|
30
|
+
if (mintReceipt.status !== 'success') {
|
|
31
|
+
throw new Error(`Fleet IdentityRegistry.register() failed: ${mintTxHash}`);
|
|
32
|
+
}
|
|
33
|
+
const fleetAgentId = ctx.parseAgentIdFromReceipt(mintReceipt, identityRegistry);
|
|
34
|
+
if (fleetAgentId === null) {
|
|
35
|
+
throw new Error(`Fleet IdentityRegistry.register() succeeded but Registered event missing (tx=${mintTxHash})`);
|
|
36
|
+
}
|
|
37
|
+
// Persist agentId IMMEDIATELY so a crash between mint and bind doesn't lose it.
|
|
38
|
+
await ctx.store.patchFleet({
|
|
39
|
+
fleet_agent_id: fleetAgentId,
|
|
40
|
+
fleet_identity_registry: getAddress(identityRegistry),
|
|
41
|
+
});
|
|
42
|
+
// Bind the Safe via setAgentWallet (ERC-1271).
|
|
43
|
+
// Wrapped in the freshly-deployed-Safe retry (jinn-mono-k1ng). The
|
|
44
|
+
// pre-k1ng single-attempt version halted bootstrap when the documented
|
|
45
|
+
// race fired on the first attempt — exactly the 2026-05-18 canary's
|
|
46
|
+
// second-time-around failure mode.
|
|
47
|
+
console.error(`[fleet-bootstrap] Stage 1: binding fleet Safe ${fleetSafe} to agentId=${fleetAgentId}`);
|
|
48
|
+
const bindResult = await ctx.bindAgentWalletWithRetry({
|
|
49
|
+
identityRegistryAddress: addr(identityRegistry),
|
|
50
|
+
agentId: BigInt(fleetAgentId),
|
|
51
|
+
safeAddress: addr(fleetSafe),
|
|
52
|
+
agentEoaAccount: agentSigner,
|
|
53
|
+
agentEoaWalletClient: agentWallet,
|
|
54
|
+
publicClient: ctx.publicClient,
|
|
55
|
+
chainId: ctx.config.chainId,
|
|
56
|
+
}, 'Stage 1');
|
|
57
|
+
if (!bindResult.ok) {
|
|
58
|
+
const bindErr = bindResult.error;
|
|
59
|
+
throw new Error(`Fleet setAgentWallet failed after ${ctx.safeBindingMaxAttempts} attempts: ${bindErr.shortMessage}` +
|
|
60
|
+
(bindErr.revertReason ? ` (revert: ${bindErr.revertReason})` : ''));
|
|
61
|
+
}
|
|
62
|
+
console.error(`[fleet-bootstrap] Stage 1: setAgentWallet succeeded (tx=${bindResult.txHash})`);
|
|
63
|
+
return ctx.store.patchFleet({ fleet_stage: 'stage1' });
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=fleet-identity-register.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fleet-identity-register.js","sourceRoot":"","sources":["../../../src/earning/steps/fleet-identity-register.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { StepContext } from './context.js';
|
|
2
|
+
import type { FleetState } from '../types.js';
|
|
3
|
+
/** Deploy the predicted fleet Safe. Funds the agent EOA from master if needed. */
|
|
4
|
+
export declare function stepFleetSafeDeploy(ctx: StepContext, state: FleetState, mnemonic: string): Promise<FleetState>;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { getAddress } from 'viem';
|
|
2
|
+
import { addr } from './context.js';
|
|
3
|
+
import { deriveAgentAddress, deriveAgentSigner, deriveMasterSigner, walletPrivateKeyAtIndex, } from '../wallet.js';
|
|
4
|
+
import { initPredictedSafe } from '../safe-adapter.js';
|
|
5
|
+
import { createJinnWalletClient } from '../viem-clients.js';
|
|
6
|
+
import { viemSendTransactionWithRetry, waitForContractCode, waitForTransactionReceiptWithRetry, } from '../../tx-retry.js';
|
|
7
|
+
import { STAGE1_AGENT_ETH } from '../bootstrap.js';
|
|
8
|
+
/** Deploy the predicted fleet Safe. Funds the agent EOA from master if needed. */
|
|
9
|
+
export async function stepFleetSafeDeploy(ctx, state, mnemonic) {
|
|
10
|
+
const agentAddress = deriveAgentAddress(mnemonic, 1);
|
|
11
|
+
const agentKey = walletPrivateKeyAtIndex(mnemonic, 1);
|
|
12
|
+
const agentSigner = deriveAgentSigner(mnemonic, 1);
|
|
13
|
+
const fleetSafe = state.fleet_safe_address;
|
|
14
|
+
// Fund agent EOA so it can pay for Safe deploy + setAgentWallet gas.
|
|
15
|
+
// 0.01 ETH covers Safe deploy (~250k gas) + register (~80k) + setAgentWallet
|
|
16
|
+
// (~200k) at testnet gas prices comfortably. STAGE1_AGENT_ETH is the
|
|
17
|
+
// module-level constant used both here and in `stage1MinMasterEth` so the
|
|
18
|
+
// gate and the transfer agree (jinn-mono-u34i).
|
|
19
|
+
const masterAccount = deriveMasterSigner(mnemonic);
|
|
20
|
+
const masterWallet = createJinnWalletClient(ctx.config.rpcUrl, ctx.chain, masterAccount);
|
|
21
|
+
const agentBalance = await ctx.publicClient.getBalance({
|
|
22
|
+
address: getAddress(agentAddress),
|
|
23
|
+
});
|
|
24
|
+
if (agentBalance < STAGE1_AGENT_ETH) {
|
|
25
|
+
const fundAmount = STAGE1_AGENT_ETH - agentBalance;
|
|
26
|
+
console.error(`[fleet-bootstrap] Stage 1: funding fleet agent EOA with ${fundAmount} wei from master`);
|
|
27
|
+
const fundHash = await viemSendTransactionWithRetry(masterWallet, ctx.publicClient, {
|
|
28
|
+
account: masterAccount,
|
|
29
|
+
to: addr(agentAddress),
|
|
30
|
+
value: fundAmount,
|
|
31
|
+
});
|
|
32
|
+
await waitForTransactionReceiptWithRetry(ctx.publicClient, fundHash);
|
|
33
|
+
}
|
|
34
|
+
console.error(`[fleet-bootstrap] Stage 1: deploying fleet Safe at ${fleetSafe}`);
|
|
35
|
+
const { safe } = await initPredictedSafe({
|
|
36
|
+
rpcUrl: ctx.config.rpcUrl,
|
|
37
|
+
signerKey: agentKey,
|
|
38
|
+
owners: [agentAddress],
|
|
39
|
+
threshold: 1,
|
|
40
|
+
});
|
|
41
|
+
const deployTx = await safe.createSafeDeploymentTransaction();
|
|
42
|
+
const agentWallet = createJinnWalletClient(ctx.config.rpcUrl, ctx.chain, agentSigner);
|
|
43
|
+
const deployHash = await viemSendTransactionWithRetry(agentWallet, ctx.publicClient, {
|
|
44
|
+
account: agentSigner,
|
|
45
|
+
to: deployTx.to,
|
|
46
|
+
value: BigInt(deployTx.value),
|
|
47
|
+
data: deployTx.data,
|
|
48
|
+
});
|
|
49
|
+
const receipt = await waitForTransactionReceiptWithRetry(ctx.publicClient, deployHash);
|
|
50
|
+
if (receipt.status !== 'success') {
|
|
51
|
+
throw new Error(`Fleet Safe deployment tx failed: ${deployHash}`);
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
await waitForContractCode(ctx.publicClient, getAddress(fleetSafe));
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
throw new Error(`Fleet Safe deployment succeeded but no code at ${fleetSafe}`);
|
|
58
|
+
}
|
|
59
|
+
console.error(`[fleet-bootstrap] Stage 1: fleet Safe deployed (tx=${deployHash})`);
|
|
60
|
+
return ctx.store.load(ctx.chain);
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=fleet-safe-deploy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fleet-safe-deploy.js","sourceRoot":"","sources":["../../../src/earning/steps/fleet-safe-deploy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { StepContext } from './context.js';
|
|
2
|
+
import type { FleetState } from '../types.js';
|
|
3
|
+
/** Deterministic Safe predict from the HD-index-1 agent EOA. */
|
|
4
|
+
export declare function stepFleetSafePredict(ctx: StepContext, state: FleetState, mnemonic: string): Promise<FleetState>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { getAddress } from 'viem';
|
|
2
|
+
import { deriveAgentAddress, walletPrivateKeyAtIndex } from '../wallet.js';
|
|
3
|
+
import { initPredictedSafe } from '../safe-adapter.js';
|
|
4
|
+
/** Deterministic Safe predict from the HD-index-1 agent EOA. */
|
|
5
|
+
export async function stepFleetSafePredict(ctx, state, mnemonic) {
|
|
6
|
+
const agentAddress = deriveAgentAddress(mnemonic, 1);
|
|
7
|
+
const agentKey = walletPrivateKeyAtIndex(mnemonic, 1);
|
|
8
|
+
console.error(`[fleet-bootstrap] Stage 1: predicting fleet Safe (owner=${agentAddress})`);
|
|
9
|
+
const { address } = await initPredictedSafe({
|
|
10
|
+
rpcUrl: ctx.config.rpcUrl,
|
|
11
|
+
signerKey: agentKey,
|
|
12
|
+
owners: [agentAddress],
|
|
13
|
+
threshold: 1,
|
|
14
|
+
});
|
|
15
|
+
void state;
|
|
16
|
+
return ctx.store.patchFleet({ fleet_safe_address: getAddress(address) });
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=fleet-safe-predict.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fleet-safe-predict.js","sourceRoot":"","sources":["../../../src/earning/steps/fleet-safe-predict.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGlC,OAAO,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,gEAAgE;AAChE,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,GAAgB,EAChB,KAAiB,EACjB,QAAgB;IAEhB,MAAM,YAAY,GAAG,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAEtD,OAAO,CAAC,KAAK,CACX,2DAA2D,YAAY,GAAG,CAC3E,CAAC;IACF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,iBAAiB,CAAC;QAC1C,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM;QACzB,SAAS,EAAE,QAAQ;QACnB,MAAM,EAAE,CAAC,YAAY,CAAC;QACtB,SAAS,EAAE,CAAC;KACb,CAAC,CAAC;IAEH,KAAK,KAAK,CAAC;IACX,OAAO,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,kBAAkB,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAC3E,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type TransactionReceipt } from 'viem';
|
|
2
|
+
export declare function parseServiceIdFromReceipt(receipt: TransactionReceipt, serviceRegistry: string): Promise<number | null>;
|
|
3
|
+
export declare function parseMultisigFromReceipt(receipt: TransactionReceipt): string | null;
|
|
4
|
+
/**
|
|
5
|
+
* Extract `agentId` from an `IdentityRegistry.Registered` log emitted in
|
|
6
|
+
* the receipt. Filters by `(address, topic[0])` first to avoid colliding
|
|
7
|
+
* with any other contract that happens to share the event signature.
|
|
8
|
+
*
|
|
9
|
+
* Returns the agentId as a decimal string (uint256) so it round-trips
|
|
10
|
+
* cleanly through JSON-persisted EarningState.
|
|
11
|
+
*/
|
|
12
|
+
export declare function parseAgentIdFromReceipt(receipt: TransactionReceipt, identityRegistry: string): string | null;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { decodeEventLog, getAddress } from 'viem';
|
|
2
|
+
import { EVENT_TOPICS, IDENTITY_REGISTRY_ABI, SERVICE_REGISTRY_L2_ABI, } from '../contracts.js';
|
|
3
|
+
export async function parseServiceIdFromReceipt(receipt, serviceRegistry) {
|
|
4
|
+
const createServiceTopic = EVENT_TOPICS.CreateService;
|
|
5
|
+
const serviceRegistryAddress = serviceRegistry.toLowerCase();
|
|
6
|
+
for (const log of receipt.logs) {
|
|
7
|
+
if (log.address.toLowerCase() !== serviceRegistryAddress ||
|
|
8
|
+
log.topics[0] !== createServiceTopic) {
|
|
9
|
+
continue;
|
|
10
|
+
}
|
|
11
|
+
try {
|
|
12
|
+
const decoded = decodeEventLog({
|
|
13
|
+
abi: SERVICE_REGISTRY_L2_ABI,
|
|
14
|
+
data: log.data,
|
|
15
|
+
topics: log.topics,
|
|
16
|
+
strict: false,
|
|
17
|
+
});
|
|
18
|
+
if (decoded.eventName === 'CreateService' && 'serviceId' in decoded.args) {
|
|
19
|
+
return Number(decoded.args.serviceId);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
// Not a matching event
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
export function parseMultisigFromReceipt(receipt) {
|
|
29
|
+
const topic = EVENT_TOPICS.CreateMultisigWithAgents;
|
|
30
|
+
for (const log of receipt.logs) {
|
|
31
|
+
const t0 = log.topics[0];
|
|
32
|
+
if (t0 === topic && log.topics.length >= 3) {
|
|
33
|
+
return getAddress(('0x' + log.topics[2].slice(26)));
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return null;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Extract `agentId` from an `IdentityRegistry.Registered` log emitted in
|
|
40
|
+
* the receipt. Filters by `(address, topic[0])` first to avoid colliding
|
|
41
|
+
* with any other contract that happens to share the event signature.
|
|
42
|
+
*
|
|
43
|
+
* Returns the agentId as a decimal string (uint256) so it round-trips
|
|
44
|
+
* cleanly through JSON-persisted EarningState.
|
|
45
|
+
*/
|
|
46
|
+
export function parseAgentIdFromReceipt(receipt, identityRegistry) {
|
|
47
|
+
const topic = EVENT_TOPICS.Registered;
|
|
48
|
+
const target = identityRegistry.toLowerCase();
|
|
49
|
+
for (const log of receipt.logs) {
|
|
50
|
+
if (log.address.toLowerCase() !== target)
|
|
51
|
+
continue;
|
|
52
|
+
if (log.topics[0] !== topic)
|
|
53
|
+
continue;
|
|
54
|
+
try {
|
|
55
|
+
const decoded = decodeEventLog({
|
|
56
|
+
abi: IDENTITY_REGISTRY_ABI,
|
|
57
|
+
data: log.data,
|
|
58
|
+
topics: log.topics,
|
|
59
|
+
strict: false,
|
|
60
|
+
});
|
|
61
|
+
if (decoded.eventName === 'Registered' && 'agentId' in decoded.args) {
|
|
62
|
+
return decoded.args.agentId.toString();
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
// Not a matching event
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=receipt-parsing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"receipt-parsing.js","sourceRoot":"","sources":["../../../src/earning/steps/receipt-parsing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAqC,MAAM,MAAM,CAAC;AACrF,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAA2B,EAC3B,eAAuB;IAEvB,MAAM,kBAAkB,GAAG,YAAY,CAAC,aAAa,CAAC;IACtD,MAAM,sBAAsB,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;IAE7D,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QAC/B,IACE,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,sBAAsB;YACpD,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,kBAAkB,EACpC,CAAC;YACD,SAAS;QACX,CAAC;QACD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,cAAc,CAAC;gBAC7B,GAAG,EAAE,uBAAuB;gBAC5B,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,GAAG,CAAC,MAAyB;gBACrC,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,SAAS,KAAK,eAAe,IAAI,WAAW,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACzE,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,uBAAuB;QACzB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAA2B;IAClE,MAAM,KAAK,GAAG,YAAY,CAAC,wBAAwB,CAAC;IACpD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,EAAE,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAC3C,OAAO,UAAU,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAQ,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAA2B,EAC3B,gBAAwB;IAExB,MAAM,KAAK,GAAG,YAAY,CAAC,UAAU,CAAC;IACtC,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,EAAE,CAAC;IAC9C,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,MAAM;YAAE,SAAS;QACnD,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK;YAAE,SAAS;QACtC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,cAAc,CAAC;gBAC7B,GAAG,EAAE,qBAAqB;gBAC1B,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,GAAG,CAAC,MAAyB;gBACrC,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,SAAS,KAAK,YAAY,IAAI,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACpE,OAAQ,OAAO,CAAC,IAAI,CAAC,OAAkB,CAAC,QAAQ,EAAE,CAAC;YACrD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,uBAAuB;QACzB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
*/
|
|
17
17
|
import { encodeFunctionData, getAddress } from 'viem';
|
|
18
18
|
import { STOLAS_DISTRIBUTOR_ABI } from './contracts.js';
|
|
19
|
-
import { JINN_STAKING_ABI } from './
|
|
19
|
+
import { JINN_STAKING_ABI } from './stolas-staking.js';
|
|
20
20
|
import { executeSafeTxDirect } from './safe-adapter.js';
|
|
21
21
|
import { isRecoverableTransactionError, viemSendTransactionWithRetry, waitForTransactionReceiptWithRetry, } from '../tx-retry.js';
|
|
22
22
|
import { TransientError } from '../types/errors.js';
|
|
@@ -96,7 +96,7 @@ export async function tickStolasDistributorClaims(publicClient, masterWallet, op
|
|
|
96
96
|
const receipt = await waitForReceipt(publicClient, txHash);
|
|
97
97
|
if (receipt.status !== 'success') {
|
|
98
98
|
result.failedPermanent += 1;
|
|
99
|
-
console.
|
|
99
|
+
console.debug(`[reward-claim] claim tx failed for service ${serviceId} (hash=${txHash})`);
|
|
100
100
|
continue;
|
|
101
101
|
}
|
|
102
102
|
result.submitted += 1;
|
|
@@ -107,8 +107,8 @@ export async function tickStolasDistributorClaims(publicClient, masterWallet, op
|
|
|
107
107
|
amountWei: pending.toString(),
|
|
108
108
|
});
|
|
109
109
|
console.log(`[reward-claim] Submitted distributor.claim for service ${serviceId} ` +
|
|
110
|
-
`(~${pending.toString()} wei pre-split —
|
|
111
|
-
`
|
|
110
|
+
`(~${pending.toString()} wei pre-split — operator share is the curating-agent ` +
|
|
111
|
+
`slot per stOLAS proxy config; collector/protocol route separately)`);
|
|
112
112
|
}
|
|
113
113
|
catch (err) {
|
|
114
114
|
if (isRecoverableTransactionError(err)) {
|
|
@@ -117,7 +117,7 @@ export async function tickStolasDistributorClaims(publicClient, masterWallet, op
|
|
|
117
117
|
else {
|
|
118
118
|
result.failedPermanent += 1;
|
|
119
119
|
}
|
|
120
|
-
console.
|
|
120
|
+
console.debug(`[reward-claim] Skipped service ${serviceId}:`, err instanceof Error ? err.message : err);
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
if (options.strict) {
|
|
@@ -165,7 +165,7 @@ export async function tickSelfBondStakingClaims(publicClient, options) {
|
|
|
165
165
|
result.attempted += 1;
|
|
166
166
|
if (!safeAddress || !agentPrivateKey || !rpcUrl) {
|
|
167
167
|
result.skippedMissingConfig += 1;
|
|
168
|
-
console.
|
|
168
|
+
console.debug(`[reward-claim] Self-bond: service ${serviceId} skipped — missing safeAddress, agentPrivateKey, or rpcUrl on claim target.`);
|
|
169
169
|
continue;
|
|
170
170
|
}
|
|
171
171
|
try {
|
|
@@ -200,7 +200,7 @@ export async function tickSelfBondStakingClaims(publicClient, options) {
|
|
|
200
200
|
const receipt = await waitForReceipt(publicClient, txHash);
|
|
201
201
|
if (receipt.status !== 'success') {
|
|
202
202
|
result.failedPermanent += 1;
|
|
203
|
-
console.
|
|
203
|
+
console.debug(`[reward-claim] Self-bond claim tx failed for service ${serviceId} (hash=${txHash})`);
|
|
204
204
|
continue;
|
|
205
205
|
}
|
|
206
206
|
result.submitted += 1;
|
|
@@ -219,7 +219,7 @@ export async function tickSelfBondStakingClaims(publicClient, options) {
|
|
|
219
219
|
else {
|
|
220
220
|
result.failedPermanent += 1;
|
|
221
221
|
}
|
|
222
|
-
console.
|
|
222
|
+
console.debug(`[reward-claim] Self-bond: skipped service ${serviceId}:`, err instanceof Error ? err.message : err);
|
|
223
223
|
}
|
|
224
224
|
}
|
|
225
225
|
if (options.strict) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stolas-claim.js","sourceRoot":"","sources":["../../src/earning/stolas-claim.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAA0B,MAAM,MAAM,CAAC;AAI9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"stolas-claim.js","sourceRoot":"","sources":["../../src/earning/stolas-claim.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* OLAS staking-reward (stOLAS) helper for the curating-agent staking contract.
|
|
3
3
|
*
|
|
4
|
-
* The OLAS
|
|
4
|
+
* The OLAS staking proxy exposes `calculateStakingReward()` plus
|
|
5
5
|
* owner-authorized `claim()` / `checkpointAndClaim()` entrypoints.
|
|
6
6
|
*/
|
|
7
7
|
import type { PublicClient, WalletClient } from 'viem';
|
|
@@ -98,15 +98,11 @@ export declare const JINN_STAKING_ABI: readonly [{
|
|
|
98
98
|
readonly type: "function";
|
|
99
99
|
}];
|
|
100
100
|
/**
|
|
101
|
-
* Claim
|
|
102
|
-
*
|
|
103
|
-
* Returns { claimed: false, amount: 0n } until the Phase 1a contract is
|
|
104
|
-
* deployed and the ABI is finalised. Wiring up is a matter of uncommenting
|
|
105
|
-
* the contract call below.
|
|
101
|
+
* Claim OLAS staking rewards from the stOLAS curating-agent staking contract.
|
|
106
102
|
*
|
|
107
103
|
* @param publicClient — viem PublicClient for read calls
|
|
108
104
|
* @param walletClient — viem WalletClient for write calls
|
|
109
|
-
* @param stakingContractAddress —
|
|
105
|
+
* @param stakingContractAddress — OLAS staking contract address
|
|
110
106
|
* @param serviceId — OLAS service ID registered in the staking contract
|
|
111
107
|
*/
|
|
112
108
|
export declare function claimJinnRewards(publicClient: PublicClient, walletClient: WalletClient, stakingContractAddress: `0x${string}`, serviceId: number, options?: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* OLAS staking-reward (stOLAS) helper for the curating-agent staking contract.
|
|
3
3
|
*
|
|
4
|
-
* The OLAS
|
|
4
|
+
* The OLAS staking proxy exposes `calculateStakingReward()` plus
|
|
5
5
|
* owner-authorized `claim()` / `checkpointAndClaim()` entrypoints.
|
|
6
6
|
*/
|
|
7
7
|
// ---------------------------------------------------------------------------
|
|
@@ -79,15 +79,11 @@ export const JINN_STAKING_ABI = [
|
|
|
79
79
|
// Claim function
|
|
80
80
|
// ---------------------------------------------------------------------------
|
|
81
81
|
/**
|
|
82
|
-
* Claim
|
|
83
|
-
*
|
|
84
|
-
* Returns { claimed: false, amount: 0n } until the Phase 1a contract is
|
|
85
|
-
* deployed and the ABI is finalised. Wiring up is a matter of uncommenting
|
|
86
|
-
* the contract call below.
|
|
82
|
+
* Claim OLAS staking rewards from the stOLAS curating-agent staking contract.
|
|
87
83
|
*
|
|
88
84
|
* @param publicClient — viem PublicClient for read calls
|
|
89
85
|
* @param walletClient — viem WalletClient for write calls
|
|
90
|
-
* @param stakingContractAddress —
|
|
86
|
+
* @param stakingContractAddress — OLAS staking contract address
|
|
91
87
|
* @param serviceId — OLAS service ID registered in the staking contract
|
|
92
88
|
*/
|
|
93
89
|
export async function claimJinnRewards(publicClient, walletClient, stakingContractAddress, serviceId, options = {}) {
|
|
@@ -113,8 +109,8 @@ export async function claimJinnRewards(publicClient, walletClient, stakingContra
|
|
|
113
109
|
// Wait for confirmation
|
|
114
110
|
const receipt = await publicClient.waitForTransactionReceipt({ hash });
|
|
115
111
|
if (receipt.status !== 'success') {
|
|
116
|
-
throw new Error(`
|
|
112
|
+
throw new Error(`OLAS staking reward claim tx reverted: ${hash}`);
|
|
117
113
|
}
|
|
118
114
|
return { claimed: true, amount: pending };
|
|
119
115
|
}
|
|
120
|
-
//# sourceMappingURL=
|
|
116
|
+
//# sourceMappingURL=stolas-staking.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stolas-staking.js","sourceRoot":"","sources":["../../src/earning/stolas-staking.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import type { FleetState, ServiceState, StakingMode } from './types.js';
|
|
|
3
3
|
import { type FleetStateStore } from './store.js';
|
|
4
4
|
import { viemSendTransactionWithRetry, waitForTransactionReceiptWithRetry } from '../tx-retry.js';
|
|
5
5
|
export declare const DEPRECATED_BASE_SEPOLIA_STAKING_PROXY = "0xf358b5c1ac4ddc4e807b5baf008826bf193eab3b";
|
|
6
|
+
export declare const DEPRECATED_BASE_SEPOLIA_STAKING_PROXIES: readonly ["0xf358b5c1ac4ddc4e807b5baf008826bf193eab3b", "0x24e34E5037956a5Feca1AAAfaA30297084C228B8", "0x3A14c71e94F3d38A6BE4319808B259FbFb47B86f"];
|
|
6
7
|
export interface TestnetSetupMigrationPlan {
|
|
7
8
|
services: ServiceState[];
|
|
8
9
|
}
|
|
@@ -2,6 +2,11 @@ import { encodeFunctionData, getAddress, pad, } from 'viem';
|
|
|
2
2
|
import { STAKING_ABI, STOLAS_DISTRIBUTOR_ABI } from './contracts.js';
|
|
3
3
|
import { viemSendTransactionWithRetry, waitForTransactionReceiptWithRetry, } from '../tx-retry.js';
|
|
4
4
|
export const DEPRECATED_BASE_SEPOLIA_STAKING_PROXY = '0xf358b5c1ac4ddc4e807b5baf008826bf193eab3b';
|
|
5
|
+
export const DEPRECATED_BASE_SEPOLIA_STAKING_PROXIES = [
|
|
6
|
+
DEPRECATED_BASE_SEPOLIA_STAKING_PROXY,
|
|
7
|
+
'0x24e34E5037956a5Feca1AAAfaA30297084C228B8',
|
|
8
|
+
'0x3A14c71e94F3d38A6BE4319808B259FbFb47B86f',
|
|
9
|
+
];
|
|
5
10
|
const MIGRATION_KIND = 'base-sepolia-standard-setup';
|
|
6
11
|
function sameAddress(a, b) {
|
|
7
12
|
if (!a || !b)
|
|
@@ -15,8 +20,8 @@ function sameAddress(a, b) {
|
|
|
15
20
|
}
|
|
16
21
|
function isDeprecatedService(svc, currentStakingContract) {
|
|
17
22
|
return (svc.service_id !== null &&
|
|
18
|
-
sameAddress(svc.staking_address,
|
|
19
|
-
|
|
23
|
+
DEPRECATED_BASE_SEPOLIA_STAKING_PROXIES.some(proxy => sameAddress(svc.staking_address, proxy) &&
|
|
24
|
+
!sameAddress(currentStakingContract, proxy)));
|
|
20
25
|
}
|
|
21
26
|
export function detectDeprecatedTestnetSetup(params) {
|
|
22
27
|
if (params.chain !== 'base-sepolia' || params.stakingMode !== 'standard') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"testnet-setup-migration.js","sourceRoot":"","sources":["../../src/earning/testnet-setup-migration.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,GAAG,GAKJ,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAOrE,OAAO,EACL,4BAA4B,EAC5B,kCAAkC,GACnC,MAAM,gBAAgB,CAAC;AAExB,MAAM,CAAC,MAAM,qCAAqC,GAChD,4CAA4C,CAAC;
|
|
1
|
+
{"version":3,"file":"testnet-setup-migration.js","sourceRoot":"","sources":["../../src/earning/testnet-setup-migration.ts"],"names":[],"mappings":"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"}
|