@jinn-network/client 0.1.9 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CONTRIBUTING.md +2 -2
- package/README.md +13 -2
- 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 +30 -0
- package/dist/adapters/mech/adapter.js +198 -54
- package/dist/adapters/mech/adapter.js.map +1 -1
- package/dist/adapters/mech/contracts.d.ts +174 -13
- package/dist/adapters/mech/contracts.js +37 -21
- package/dist/adapters/mech/contracts.js.map +1 -1
- package/dist/adapters/mech/ipfs.d.ts +15 -27
- package/dist/adapters/mech/ipfs.js +39 -102
- package/dist/adapters/mech/ipfs.js.map +1 -1
- package/dist/adapters/mech/safe.js +74 -2
- package/dist/adapters/mech/safe.js.map +1 -1
- package/dist/adapters/mech/types.d.ts +15 -130
- package/dist/adapters/mech/types.js +9 -65
- package/dist/adapters/mech/types.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/gather-status.d.ts +49 -15
- package/dist/api/gather-status.js +115 -417
- 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 +2 -2
- package/dist/api/loop-completion-build.js +2 -3
- package/dist/api/loop-completion-build.js.map +1 -1
- 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/run-outcome.d.ts +49 -0
- package/dist/api/run-outcome.js +65 -0
- package/dist/api/run-outcome.js.map +1 -0
- package/dist/api/server.d.ts +6 -16
- package/dist/api/server.js +36 -26
- package/dist/api/server.js.map +1 -1
- package/dist/api/setup-endpoints.d.ts +32 -0
- package/dist/api/setup-endpoints.js +232 -32
- package/dist/api/setup-endpoints.js.map +1 -1
- package/dist/api/solvernets-endpoints.js +1 -1
- package/dist/api/solvernets-endpoints.js.map +1 -1
- package/dist/api/status-build.d.ts +74 -64
- package/dist/api/status-build.js +31 -55
- package/dist/api/status-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 +21 -2
- package/dist/api/task-runs-build.js +27 -7
- 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/captures/ingest.d.ts +21 -0
- package/dist/captures/ingest.js +133 -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 +25 -0
- package/dist/captures/publish.js +17 -7
- package/dist/captures/publish.js.map +1 -1
- package/dist/cli/commands/backfill-failed-deliveries.d.ts +40 -0
- package/dist/cli/commands/backfill-failed-deliveries.js +172 -0
- package/dist/cli/commands/backfill-failed-deliveries.js.map +1 -0
- package/dist/cli/commands/doctor.js +4 -7
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/eval.d.ts +11 -0
- package/dist/cli/commands/eval.js +103 -23
- package/dist/cli/commands/eval.js.map +1 -1
- package/dist/cli/commands/kill.d.ts +14 -0
- package/dist/cli/commands/kill.js +141 -0
- package/dist/cli/commands/kill.js.map +1 -0
- package/dist/cli/commands/rewards.js +17 -15
- package/dist/cli/commands/rewards.js.map +1 -1
- package/dist/cli/commands/run.js +18 -4
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/solver-nets.d.ts +6 -0
- package/dist/cli/commands/solver-nets.js +145 -2
- package/dist/cli/commands/solver-nets.js.map +1 -1
- package/dist/cli/commands/solver-plugins.js +2 -2
- package/dist/cli/commands/solver-plugins.js.map +1 -1
- package/dist/cli/commands/stop.js +97 -21
- package/dist/cli/commands/stop.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 +4 -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/cli/ui-auto-open-gate.d.ts +22 -0
- package/dist/cli/ui-auto-open-gate.js +24 -0
- package/dist/cli/ui-auto-open-gate.js.map +1 -0
- package/dist/config.d.ts +258 -540
- package/dist/config.js +280 -193
- package/dist/config.js.map +1 -1
- package/dist/conformance/execution-envelope-authenticator.d.ts +2 -0
- package/dist/conformance/execution-envelope-authenticator.js +38 -0
- package/dist/conformance/execution-envelope-authenticator.js.map +1 -0
- 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 +1 -40
- package/dist/corpus/acquire.js +1 -212
- package/dist/corpus/acquire.js.map +1 -1
- package/dist/corpus/cache.d.ts +1 -14
- package/dist/corpus/cache.js +1 -17
- package/dist/corpus/cache.js.map +1 -1
- package/dist/corpus/fetch-artifact.d.ts +1 -0
- package/dist/corpus/fetch-artifact.js +2 -0
- package/dist/corpus/fetch-artifact.js.map +1 -0
- package/dist/corpus/fetch.d.ts +3 -7
- package/dist/corpus/fetch.js +9 -22
- package/dist/corpus/fetch.js.map +1 -1
- package/dist/corpus/index.d.ts +2 -3
- package/dist/corpus/index.js +19 -110
- package/dist/corpus/index.js.map +1 -1
- 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 +1 -16
- package/dist/corpus/route-resolver.js +1 -19
- package/dist/corpus/route-resolver.js.map +1 -1
- package/dist/corpus/types.d.ts +1 -17
- package/dist/corpus/types.js +1 -34
- package/dist/corpus/types.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 +31 -12
- package/dist/daemon/daemon.js +138 -32
- 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 +3 -0
- package/dist/daemon/eviction-loop.js +7 -4
- package/dist/daemon/eviction-loop.js.map +1 -1
- package/dist/daemon/harvest-loop.d.ts +72 -0
- package/dist/daemon/harvest-loop.js +474 -0
- package/dist/daemon/harvest-loop.js.map +1 -0
- package/dist/daemon/join-applier.d.ts +40 -0
- package/dist/daemon/join-applier.js +52 -0
- package/dist/daemon/join-applier.js.map +1 -0
- package/dist/daemon/loop-heartbeat.d.ts +95 -0
- package/dist/daemon/loop-heartbeat.js +80 -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-C988eu68.js +95 -0
- package/dist/dashboard/assets/index-CawZUjVI.css +1 -0
- package/dist/dashboard/index.html +2 -2
- package/dist/discovery/http.d.ts +10 -0
- package/dist/discovery/http.js +178 -335
- package/dist/discovery/http.js.map +1 -1
- package/dist/discovery/onchain.js +30 -9
- package/dist/discovery/onchain.js.map +1 -1
- package/dist/discovery/types.d.ts +98 -52
- package/dist/discovery/types.js.map +1 -1
- package/dist/discovery/with-fallback.js +19 -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 +11 -14
- package/dist/earning/bootstrap.js +56 -204
- 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/master-gas.d.ts +10 -0
- package/dist/earning/master-gas.js +11 -0
- package/dist/earning/master-gas.js.map +1 -0
- package/dist/earning/safe-adapter.js +1 -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} +25 -23
- 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 +9 -9
- 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/abis.d.ts +16 -0
- package/dist/erc8004/abis.js +12 -0
- package/dist/erc8004/abis.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 +54 -1
- package/dist/erc8004/identity.js +114 -5
- package/dist/erc8004/identity.js.map +1 -1
- package/dist/erc8004/index.d.ts +5 -2
- package/dist/erc8004/index.js +6 -2
- package/dist/erc8004/index.js.map +1 -1
- package/dist/erc8004/manifest-consumer.d.ts +32 -0
- package/dist/erc8004/manifest-consumer.js +95 -0
- package/dist/erc8004/manifest-consumer.js.map +1 -0
- package/dist/erc8004/manifest-registry.d.ts +1 -0
- package/dist/erc8004/manifest-registry.js +2 -0
- package/dist/erc8004/manifest-registry.js.map +1 -0
- package/dist/erc8004/merkle.d.ts +1 -0
- package/dist/erc8004/merkle.js +2 -0
- package/dist/erc8004/merkle.js.map +1 -0
- package/dist/erc8004/publisher-safe-resolver.d.ts +32 -0
- package/dist/erc8004/publisher-safe-resolver.js +102 -0
- package/dist/erc8004/publisher-safe-resolver.js.map +1 -0
- package/dist/erc8004/reputation.js +16 -12
- package/dist/erc8004/reputation.js.map +1 -1
- package/dist/erc8004/validation.js +5 -4
- package/dist/erc8004/validation.js.map +1 -1
- package/dist/eval/attribution-instrument.d.ts +190 -0
- package/dist/eval/attribution-instrument.js +719 -0
- package/dist/eval/attribution-instrument.js.map +1 -0
- package/dist/eval/attribution-verdict-evidence.d.ts +41 -0
- package/dist/eval/attribution-verdict-evidence.js +124 -0
- package/dist/eval/attribution-verdict-evidence.js.map +1 -0
- package/dist/eval/capability-slate.d.ts +64 -0
- package/dist/eval/capability-slate.js +136 -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/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 +64 -3
- package/dist/eval/orchestrator.js +37 -19
- package/dist/eval/orchestrator.js.map +1 -1
- package/dist/eval/paired.d.ts +2 -68
- package/dist/eval/paired.js +2 -92
- package/dist/eval/paired.js.map +1 -1
- package/dist/eval/resolve-slate-tasks.js +2 -2
- package/dist/eval/resolve-slate-tasks.js.map +1 -1
- package/dist/eval/screen-discovery.d.ts +5 -8
- package/dist/eval/screen-discovery.js +13 -55
- package/dist/eval/screen-discovery.js.map +1 -1
- 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/backfill-failed-deliveries.d.ts +59 -0
- package/dist/harnesses/engine/backfill-failed-deliveries.js +94 -0
- package/dist/harnesses/engine/backfill-failed-deliveries.js.map +1 -0
- package/dist/harnesses/engine/canonical-json.d.ts +2 -1
- package/dist/harnesses/engine/canonical-json.js +2 -67
- package/dist/harnesses/engine/canonical-json.js.map +1 -1
- package/dist/harnesses/engine/corpus-knowledge.d.ts +67 -0
- package/dist/harnesses/engine/corpus-knowledge.js +194 -0
- package/dist/harnesses/engine/corpus-knowledge.js.map +1 -0
- package/dist/harnesses/engine/engine.d.ts +85 -1
- package/dist/harnesses/engine/engine.js +313 -6
- package/dist/harnesses/engine/engine.js.map +1 -1
- package/dist/harnesses/engine/envelope-assembly.d.ts +9 -1
- package/dist/harnesses/engine/envelope-assembly.js +6 -0
- package/dist/harnesses/engine/envelope-assembly.js.map +1 -1
- package/dist/harnesses/engine/generator-model.d.ts +36 -0
- package/dist/harnesses/engine/generator-model.js +118 -0
- package/dist/harnesses/engine/generator-model.js.map +1 -0
- package/dist/harnesses/engine/packaging.js +5 -5
- package/dist/harnesses/engine/packaging.js.map +1 -1
- package/dist/harnesses/engine/persistence.d.ts +37 -62
- package/dist/harnesses/engine/persistence.js +66 -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.js +56 -2
- package/dist/harnesses/impls/hermes-agent/adapter.js.map +1 -1
- package/dist/harnesses/impls/hermes-agent/bootstrap.d.ts +6 -0
- package/dist/harnesses/impls/hermes-agent/bootstrap.js +7 -2
- package/dist/harnesses/impls/hermes-agent/bootstrap.js.map +1 -1
- package/dist/harnesses/impls/hermes-agent/harness.d.ts +8 -0
- package/dist/harnesses/impls/hermes-agent/harness.js +21 -0
- package/dist/harnesses/impls/hermes-agent/harness.js.map +1 -1
- package/dist/harnesses/impls/index.js +8 -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 +97 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/harness.js +265 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/harness.js.map +1 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/live-eval-runner.d.ts +68 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/live-eval-runner.js +223 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/live-eval-runner.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/jinn-repo-evaluator/scope-tests.d.ts +62 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/scope-tests.js +91 -0
- package/dist/harnesses/impls/jinn-repo-evaluator/scope-tests.js.map +1 -0
- package/dist/harnesses/impls/learner/adapters/claude-code.js +9 -2
- 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 +12 -0
- package/dist/harnesses/impls/learner/harness.js +42 -0
- package/dist/harnesses/impls/learner/harness.js.map +1 -1
- package/dist/harnesses/impls/learner/harvest.js +51 -1
- package/dist/harnesses/impls/learner/harvest.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 +16 -2
- 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 +65 -6
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js +590 -35
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js.map +1 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js +4 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js.map +1 -1
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/routing-task-row-fetcher.d.ts +37 -0
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/routing-task-row-fetcher.js +59 -0
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/routing-task-row-fetcher.js.map +1 -0
- package/dist/harnesses/impls/swe-rebench-v2-evaluator/upstream-patches/passed-actual.patch +21 -0
- 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 +12 -0
- 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/lifecycle/process-discovery.d.ts +41 -0
- package/dist/lifecycle/process-discovery.js +109 -0
- package/dist/lifecycle/process-discovery.js.map +1 -0
- package/dist/main.js +358 -581
- 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 +2 -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/arm-homes.d.ts +39 -0
- package/dist/pilot/arm-homes.js +104 -0
- package/dist/pilot/arm-homes.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 +26 -0
- package/dist/pilot/instance.js +53 -0
- package/dist/pilot/instance.js.map +1 -0
- package/dist/pilot/pipeline.d.ts +17 -0
- package/dist/pilot/pipeline.js +35 -0
- package/dist/pilot/pipeline.js.map +1 -0
- package/dist/pilot/repo.d.ts +37 -0
- package/dist/pilot/repo.js +65 -0
- package/dist/pilot/repo.js.map +1 -0
- package/dist/pilot/resume.d.ts +101 -0
- package/dist/pilot/resume.js +204 -0
- package/dist/pilot/resume.js.map +1 -0
- package/dist/pilot/solve.d.ts +23 -0
- package/dist/pilot/solve.js +37 -0
- package/dist/pilot/solve.js.map +1 -0
- package/dist/pilot/tally.d.ts +42 -0
- package/dist/pilot/tally.js +100 -0
- package/dist/pilot/tally.js.map +1 -0
- package/dist/pilot/task-selection.d.ts +27 -0
- package/dist/pilot/task-selection.js +112 -0
- package/dist/pilot/task-selection.js.map +1 -0
- package/dist/plugins/resolvers.js +7 -4
- package/dist/plugins/resolvers.js.map +1 -1
- package/dist/plugins/types.d.ts +8 -0
- package/dist/preflight/deployment-readiness.d.ts +2 -22
- package/dist/preflight/deployment-readiness.js +1 -59
- package/dist/preflight/deployment-readiness.js.map +1 -1
- package/dist/preflight/pidfile-liveness.d.ts +3 -2
- package/dist/preflight/pidfile-liveness.js +18 -2
- 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/preflight/version-check.d.ts +41 -0
- package/dist/preflight/version-check.js +80 -0
- package/dist/preflight/version-check.js.map +1 -0
- package/dist/rpc/transport.d.ts +7 -5
- package/dist/rpc/transport.js +8 -6
- package/dist/rpc/transport.js.map +1 -1
- package/dist/scripts/swe-rebench-v2-evaluator.bundle.v1.patch +79 -0
- package/dist/solver-nets/registry.d.ts +19 -0
- package/dist/solver-nets/registry.js +99 -66
- package/dist/solver-nets/registry.js.map +1 -1
- package/dist/solver-types/_jinn-repo-pool.d.ts +61 -0
- package/dist/solver-types/_jinn-repo-pool.js +34 -0
- package/dist/solver-types/_jinn-repo-pool.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-commit-echo-git.d.ts +46 -0
- package/dist/solver-types/_swe-rebench-v2-commit-echo-git.js +192 -0
- package/dist/solver-types/_swe-rebench-v2-commit-echo-git.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-commit-echo.d.ts +57 -0
- package/dist/solver-types/_swe-rebench-v2-commit-echo.js +57 -0
- package/dist/solver-types/_swe-rebench-v2-commit-echo.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-differential-admission.d.ts +395 -0
- package/dist/solver-types/_swe-rebench-v2-differential-admission.js +231 -0
- package/dist/solver-types/_swe-rebench-v2-differential-admission.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-empirical-tests.d.ts +47 -0
- package/dist/solver-types/_swe-rebench-v2-empirical-tests.js +67 -0
- package/dist/solver-types/_swe-rebench-v2-empirical-tests.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-escrow.d.ts +2 -0
- package/dist/solver-types/_swe-rebench-v2-escrow.js +13 -0
- package/dist/solver-types/_swe-rebench-v2-escrow.js.map +1 -1
- package/dist/solver-types/_swe-rebench-v2-guards.d.ts +44 -0
- package/dist/solver-types/_swe-rebench-v2-guards.js +111 -0
- package/dist/solver-types/_swe-rebench-v2-guards.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-harvest-state.d.ts +191 -0
- package/dist/solver-types/_swe-rebench-v2-harvest-state.js +349 -0
- package/dist/solver-types/_swe-rebench-v2-harvest-state.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-harvest.d.ts +123 -0
- package/dist/solver-types/_swe-rebench-v2-harvest.js +539 -0
- package/dist/solver-types/_swe-rebench-v2-harvest.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-held-out-slate.d.ts +1 -1
- package/dist/solver-types/_swe-rebench-v2-held-out-slate.js +1 -1
- package/dist/solver-types/_swe-rebench-v2-held-out-slate.js.map +1 -1
- package/dist/solver-types/_swe-rebench-v2-hunk-echo.d.ts +28 -0
- package/dist/solver-types/_swe-rebench-v2-hunk-echo.js +32 -0
- package/dist/solver-types/_swe-rebench-v2-hunk-echo.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-lookup-tripwire.d.ts +16 -0
- package/dist/solver-types/_swe-rebench-v2-lookup-tripwire.js +18 -0
- package/dist/solver-types/_swe-rebench-v2-lookup-tripwire.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-mineable-store-port.d.ts +74 -0
- package/dist/solver-types/_swe-rebench-v2-mineable-store-port.js +9 -0
- package/dist/solver-types/_swe-rebench-v2-mineable-store-port.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-mineable-store.d.ts +51 -0
- package/dist/solver-types/_swe-rebench-v2-mineable-store.js +171 -0
- package/dist/solver-types/_swe-rebench-v2-mineable-store.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-mint-cli.d.ts +82 -0
- package/dist/solver-types/_swe-rebench-v2-mint-cli.js +434 -0
- package/dist/solver-types/_swe-rebench-v2-mint-cli.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-minted-environment-verifier.d.ts +25 -0
- package/dist/solver-types/_swe-rebench-v2-minted-environment-verifier.js +101 -0
- package/dist/solver-types/_swe-rebench-v2-minted-environment-verifier.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-minted-pool.d.ts +179 -0
- package/dist/solver-types/_swe-rebench-v2-minted-pool.js +408 -0
- package/dist/solver-types/_swe-rebench-v2-minted-pool.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-session-echo.d.ts +36 -0
- package/dist/solver-types/_swe-rebench-v2-session-echo.js +193 -0
- package/dist/solver-types/_swe-rebench-v2-session-echo.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-substrate.d.ts +11 -0
- package/dist/solver-types/_swe-rebench-v2-substrate.js +24 -0
- package/dist/solver-types/_swe-rebench-v2-substrate.js.map +1 -1
- package/dist/solver-types/_swe-rebench-v2-synthetic-claim.d.ts +9 -0
- package/dist/solver-types/_swe-rebench-v2-synthetic-claim.js +16 -0
- package/dist/solver-types/_swe-rebench-v2-synthetic-claim.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-validated-pool.d.ts +144 -1
- package/dist/solver-types/_swe-rebench-v2-validated-pool.js +292 -14
- package/dist/solver-types/_swe-rebench-v2-validated-pool.js.map +1 -1
- package/dist/solver-types/_swe-rebench-v2-verifier-facts.d.ts +93 -0
- package/dist/solver-types/_swe-rebench-v2-verifier-facts.js +583 -0
- package/dist/solver-types/_swe-rebench-v2-verifier-facts.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-yield-report-data.d.ts +5 -0
- package/dist/solver-types/_swe-rebench-v2-yield-report-data.js +16 -0
- package/dist/solver-types/_swe-rebench-v2-yield-report-data.js.map +1 -0
- package/dist/solver-types/_swe-rebench-v2-yield.d.ts +51 -0
- package/dist/solver-types/_swe-rebench-v2-yield.js +53 -0
- package/dist/solver-types/_swe-rebench-v2-yield.js.map +1 -0
- 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 +33 -0
- package/dist/solver-types/jinn-repo-extract.js.map +1 -0
- package/dist/solver-types/jinn-repo-live-auto.d.ts +203 -0
- package/dist/solver-types/jinn-repo-live-auto.js +348 -0
- package/dist/solver-types/jinn-repo-live-auto.js.map +1 -0
- package/dist/solver-types/jinn-repo.d.ts +42 -0
- package/dist/solver-types/jinn-repo.js +42 -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.v3.json +34 -0
- package/dist/solver-types/slates/held-out-slate.swe-rebench-v2.v3.quality-screen.json +186 -0
- package/dist/solver-types/slates/held-out-slate.swe-rebench-v2.v3.screening-report.json +488 -0
- package/dist/solver-types/swe-rebench-v2-auto.d.ts +13 -0
- package/dist/solver-types/swe-rebench-v2-auto.js +36 -1
- package/dist/solver-types/swe-rebench-v2-auto.js.map +1 -1
- package/dist/solver-types/swe-rebench-v2.js +48 -11
- package/dist/solver-types/swe-rebench-v2.js.map +1 -1
- package/dist/solvernets/launched-record-dispatcher.d.ts +14 -0
- package/dist/solvernets/launched-record-dispatcher.js +28 -1
- package/dist/solvernets/launched-record-dispatcher.js.map +1 -1
- package/dist/solvernets/store.d.ts +1 -1
- package/dist/solvernets/store.js +1 -1
- package/dist/solvernets/store.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/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 +59 -1
- package/dist/store/store.js +157 -6
- package/dist/store/store.js.map +1 -1
- package/dist/task-creator/environment/adapters.d.ts +139 -0
- package/dist/task-creator/environment/adapters.js +446 -0
- package/dist/task-creator/environment/adapters.js.map +1 -0
- package/dist/task-creator/environment/build.d.ts +5 -0
- package/dist/task-creator/environment/build.js +53 -0
- package/dist/task-creator/environment/build.js.map +1 -0
- package/dist/task-creator/environment/contracts.d.ts +1338 -0
- package/dist/task-creator/environment/contracts.js +207 -0
- package/dist/task-creator/environment/contracts.js.map +1 -0
- package/dist/task-creator/environment/github.d.ts +25 -0
- package/dist/task-creator/environment/github.js +67 -0
- package/dist/task-creator/environment/github.js.map +1 -0
- package/dist/task-creator/environment/interfaces.d.ts +60 -0
- package/dist/task-creator/environment/interfaces.js +3 -0
- package/dist/task-creator/environment/interfaces.js.map +1 -0
- package/dist/task-creator/environment/jinn-differential-policy.d.ts +22 -0
- package/dist/task-creator/environment/jinn-differential-policy.js +73 -0
- package/dist/task-creator/environment/jinn-differential-policy.js.map +1 -0
- package/dist/task-creator/environment/policy.d.ts +38 -0
- package/dist/task-creator/environment/policy.js +51 -0
- package/dist/task-creator/environment/policy.js.map +1 -0
- package/dist/task-creator/environment/publication.d.ts +39 -0
- package/dist/task-creator/environment/publication.js +139 -0
- package/dist/task-creator/environment/publication.js.map +1 -0
- package/dist/task-creator/environment/publish-cli.d.ts +427 -0
- package/dist/task-creator/environment/publish-cli.js +180 -0
- package/dist/task-creator/environment/publish-cli.js.map +1 -0
- package/dist/task-creator/environment/recipes.d.ts +19 -0
- package/dist/task-creator/environment/recipes.js +122 -0
- package/dist/task-creator/environment/recipes.js.map +1 -0
- package/dist/task-creator/environment/resolver.d.ts +53 -0
- package/dist/task-creator/environment/resolver.js +57 -0
- package/dist/task-creator/environment/resolver.js.map +1 -0
- package/dist/task-creator/proofs/differential-receipt-bound-proof.d.ts +27 -0
- package/dist/task-creator/proofs/differential-receipt-bound-proof.js +86 -0
- package/dist/task-creator/proofs/differential-receipt-bound-proof.js.map +1 -0
- package/dist/task-creator/proofs/ipfs-cid.d.ts +7 -0
- package/dist/task-creator/proofs/ipfs-cid.js +98 -0
- package/dist/task-creator/proofs/ipfs-cid.js.map +1 -0
- package/dist/task-creator/proofs/live-proof.d.ts +99 -0
- package/dist/task-creator/proofs/live-proof.js +419 -0
- package/dist/task-creator/proofs/live-proof.js.map +1 -0
- package/dist/task-creator/proofs/public-repo-fixtures.d.ts +53 -0
- package/dist/task-creator/proofs/public-repo-fixtures.js +93 -0
- package/dist/task-creator/proofs/public-repo-fixtures.js.map +1 -0
- package/dist/task-creator/proofs/vitest-json-fixture.d.ts +40 -0
- package/dist/task-creator/proofs/vitest-json-fixture.js +115 -0
- package/dist/task-creator/proofs/vitest-json-fixture.js.map +1 -0
- 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 +3 -3
- package/dist/trajectory/harness-bundle-schema.js +1 -1
- package/dist/trajectory/harness-bundle-schema.js.map +1 -1
- package/dist/trajectory/hash-chain.d.ts +1 -18
- package/dist/trajectory/hash-chain.js +1 -22
- package/dist/trajectory/hash-chain.js.map +1 -1
- package/dist/trajectory/index.d.ts +2 -0
- package/dist/trajectory/index.js +2 -0
- package/dist/trajectory/index.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 -598
- package/dist/trajectory/schema.js +1 -102
- package/dist/trajectory/schema.js.map +1 -1
- package/dist/trajectory/scrub/build.d.ts +1 -0
- package/dist/trajectory/scrub/build.js +2 -0
- package/dist/trajectory/scrub/build.js.map +1 -0
- package/dist/trajectory/scrub/emit-scrub.d.ts +1 -0
- package/dist/trajectory/scrub/emit-scrub.js +2 -0
- package/dist/trajectory/scrub/emit-scrub.js.map +1 -0
- package/dist/trajectory/scrub/key-policy.d.ts +1 -0
- package/dist/trajectory/scrub/key-policy.js +2 -0
- package/dist/trajectory/scrub/key-policy.js.map +1 -0
- package/dist/trajectory/scrub/layer2.d.ts +1 -0
- package/dist/trajectory/scrub/layer2.js +2 -0
- package/dist/trajectory/scrub/layer2.js.map +1 -0
- package/dist/trajectory/scrub/ml-pii-stage.d.ts +1 -0
- package/dist/trajectory/scrub/ml-pii-stage.js +2 -0
- package/dist/trajectory/scrub/ml-pii-stage.js.map +1 -0
- package/dist/trajectory/scrub/openredaction-stage.d.ts +1 -0
- package/dist/trajectory/scrub/openredaction-stage.js +2 -0
- package/dist/trajectory/scrub/openredaction-stage.js.map +1 -0
- package/dist/trajectory/scrub/pii-build.d.ts +1 -0
- package/dist/trajectory/scrub/pii-build.js +2 -0
- package/dist/trajectory/scrub/pii-build.js.map +1 -0
- package/dist/trajectory/scrub/pipeline.d.ts +1 -0
- package/dist/trajectory/scrub/pipeline.js +2 -0
- package/dist/trajectory/scrub/pipeline.js.map +1 -0
- package/dist/trajectory/scrub/plain-patterns-stage.d.ts +1 -0
- package/dist/trajectory/scrub/plain-patterns-stage.js +2 -0
- package/dist/trajectory/scrub/plain-patterns-stage.js.map +1 -0
- package/dist/trajectory/scrub/secretlint-stage.d.ts +1 -0
- package/dist/trajectory/scrub/secretlint-stage.js +2 -0
- package/dist/trajectory/scrub/secretlint-stage.js.map +1 -0
- package/dist/trajectory/scrub/transformers-detector.d.ts +1 -0
- package/dist/trajectory/scrub/transformers-detector.js +2 -0
- package/dist/trajectory/scrub/transformers-detector.js.map +1 -0
- package/dist/trajectory/scrub/types.d.ts +1 -0
- package/dist/trajectory/scrub/types.js +2 -0
- package/dist/trajectory/scrub/types.js.map +1 -0
- package/dist/trajectory/secret-scrub.d.ts +4 -6
- package/dist/trajectory/secret-scrub.js +52 -12
- package/dist/trajectory/secret-scrub.js.map +1 -1
- package/dist/trajectory/span-profile.js +14 -0
- package/dist/trajectory/span-profile.js.map +1 -1
- package/dist/trajectory/transcript-parsers/aider-history.d.ts +1 -42
- package/dist/trajectory/transcript-parsers/aider-history.js +1 -181
- package/dist/trajectory/transcript-parsers/aider-history.js.map +1 -1
- package/dist/trajectory/transcript-parsers/claude-code-jsonl.d.ts +1 -37
- package/dist/trajectory/transcript-parsers/claude-code-jsonl.js +1 -142
- package/dist/trajectory/transcript-parsers/claude-code-jsonl.js.map +1 -1
- package/dist/trajectory/transcript-parsers/codex-session.d.ts +1 -42
- package/dist/trajectory/transcript-parsers/codex-session.js +1 -235
- package/dist/trajectory/transcript-parsers/codex-session.js.map +1 -1
- package/dist/trajectory/transcript-parsers/continue-devdata.d.ts +1 -41
- package/dist/trajectory/transcript-parsers/continue-devdata.js +1 -190
- package/dist/trajectory/transcript-parsers/continue-devdata.js.map +1 -1
- package/dist/trajectory/transcript-parsers/cursor-sqlite.d.ts +1 -38
- package/dist/trajectory/transcript-parsers/cursor-sqlite.js +1 -118
- package/dist/trajectory/transcript-parsers/cursor-sqlite.js.map +1 -1
- package/dist/trajectory/transcript-parsers/gemini-session.d.ts +1 -35
- package/dist/trajectory/transcript-parsers/gemini-session.js +1 -137
- package/dist/trajectory/transcript-parsers/gemini-session.js.map +1 -1
- package/dist/trajectory/transcript-parsers/types.d.ts +1 -101
- package/dist/trajectory/transcript-parsers/types.js +1 -32
- package/dist/trajectory/transcript-parsers/types.js.map +1 -1
- package/dist/trajectory/transcript-to-spans/attrs.d.ts +1 -0
- package/dist/trajectory/transcript-to-spans/attrs.js +2 -0
- package/dist/trajectory/transcript-to-spans/attrs.js.map +1 -0
- package/dist/trajectory/transcript-to-spans/claude-code-stream-json.d.ts +1 -0
- package/dist/trajectory/transcript-to-spans/claude-code-stream-json.js +2 -0
- package/dist/trajectory/transcript-to-spans/claude-code-stream-json.js.map +1 -0
- package/dist/trajectory/transcript-to-spans/codex-exec-json.d.ts +1 -0
- package/dist/trajectory/transcript-to-spans/codex-exec-json.js +2 -0
- package/dist/trajectory/transcript-to-spans/codex-exec-json.js.map +1 -0
- package/dist/trajectory/transcript-to-spans/hermes-session-json.d.ts +48 -0
- package/dist/trajectory/transcript-to-spans/hermes-session-json.js +193 -0
- package/dist/trajectory/transcript-to-spans/hermes-session-json.js.map +1 -0
- package/dist/trajectory/transcript-to-spans/index.d.ts +38 -0
- package/dist/trajectory/transcript-to-spans/index.js +77 -0
- package/dist/trajectory/transcript-to-spans/index.js.map +1 -0
- package/dist/trajectory/transcript-to-spans/types.d.ts +16 -0
- package/dist/trajectory/transcript-to-spans/types.js +11 -0
- package/dist/trajectory/transcript-to-spans/types.js.map +1 -0
- package/dist/trajectory/transcript-watcher.d.ts +41 -0
- package/dist/trajectory/transcript-watcher.js +34 -0
- package/dist/trajectory/transcript-watcher.js.map +1 -1
- package/dist/tx-retry.d.ts +18 -0
- package/dist/tx-retry.js +52 -12
- package/dist/tx-retry.js.map +1 -1
- package/dist/types/envelope.d.ts +3 -2785
- package/dist/types/envelope.js +3 -160
- package/dist/types/envelope.js.map +1 -1
- package/dist/types/manifest.d.ts +1 -0
- package/dist/types/manifest.js +2 -0
- package/dist/types/manifest.js.map +1 -0
- 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 +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +2 -71
- package/dist/types/session-provenance.js +2 -18
- package/dist/types/session-provenance.js.map +1 -1
- package/dist/types/skill-artifact.d.ts +5 -0
- package/dist/types/skill-artifact.js +6 -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 +88 -0
- package/dist/types/task-run.js +2 -0
- package/dist/types/task-run.js.map +1 -0
- package/dist/types/task.d.ts +36 -1
- package/dist/types/task.js +1 -1
- package/dist/types/task.js.map +1 -1
- package/dist/types/window.d.ts +2 -12
- package/dist/types/window.js +2 -5
- 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/core/dist/canonical-json.d.ts +1 -0
- package/dist/vendor/@jinn-network/core/dist/canonical-json.js +67 -0
- package/dist/vendor/@jinn-network/core/dist/captured-task.d.ts +140 -0
- package/dist/vendor/@jinn-network/core/dist/captured-task.js +122 -0
- package/dist/vendor/@jinn-network/core/dist/contribution-store.d.ts +97 -0
- package/dist/vendor/@jinn-network/core/dist/contribution-store.js +770 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/acquire.d.ts +39 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/acquire.js +212 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/cache.d.ts +14 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/cache.js +17 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/capture-meta.d.ts +16 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/capture-meta.js +18 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/create-corpus.d.ts +2 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/create-corpus.js +97 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/fetch-artifact.d.ts +21 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/fetch-artifact.js +32 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/fetch.d.ts +12 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/fetch.js +24 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/http-discovery.d.ts +9 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/http-discovery.js +128 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/index.d.ts +10 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/index.js +10 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/ipfs.d.ts +5 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/ipfs.js +72 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/route-resolver.d.ts +16 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/route-resolver.js +19 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/types.d.ts +177 -0
- package/dist/vendor/@jinn-network/core/dist/corpus-read/types.js +42 -0
- package/dist/vendor/@jinn-network/core/dist/envelope.d.ts +134 -0
- package/dist/vendor/@jinn-network/core/dist/envelope.js +162 -0
- package/dist/vendor/@jinn-network/core/dist/evidence-adapter.d.ts +26 -0
- package/dist/vendor/@jinn-network/core/dist/evidence-adapter.js +321 -0
- package/dist/vendor/@jinn-network/core/dist/evidence-filesystem.d.ts +40 -0
- package/dist/vendor/@jinn-network/core/dist/evidence-filesystem.js +267 -0
- package/dist/vendor/@jinn-network/core/dist/evidence-index.d.ts +117 -0
- package/dist/vendor/@jinn-network/core/dist/evidence-index.js +1083 -0
- package/dist/vendor/@jinn-network/core/dist/evidence-store-lock.d.ts +2 -0
- package/dist/vendor/@jinn-network/core/dist/evidence-store-lock.js +208 -0
- package/dist/vendor/@jinn-network/core/dist/execution-envelope.d.ts +3142 -0
- package/dist/vendor/@jinn-network/core/dist/execution-envelope.js +203 -0
- package/dist/vendor/@jinn-network/core/dist/index.d.ts +12 -0
- package/dist/vendor/@jinn-network/core/dist/index.js +12 -0
- package/dist/vendor/@jinn-network/core/dist/manifest.d.ts +75 -0
- package/dist/vendor/@jinn-network/core/dist/manifest.js +184 -0
- package/dist/vendor/@jinn-network/core/dist/paired.d.ts +68 -0
- package/dist/vendor/@jinn-network/core/dist/paired.js +92 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/build.d.ts +55 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/build.js +87 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/emit-scrub.d.ts +41 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/emit-scrub.js +87 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/index.d.ts +12 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/index.js +12 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/key-policy.d.ts +20 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/key-policy.js +42 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/layer2.d.ts +24 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/layer2.js +33 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/ml-pii-stage.d.ts +24 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/ml-pii-stage.js +42 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/openredaction-stage.d.ts +196 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/openredaction-stage.js +270 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/pii-build.d.ts +38 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/pii-build.js +67 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/pipeline.d.ts +38 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/pipeline.js +83 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/plain-patterns-stage.d.ts +42 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/plain-patterns-stage.js +114 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/secretlint-stage.d.ts +36 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/secretlint-stage.js +249 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/transformers-detector.d.ts +35 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/transformers-detector.js +67 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/types.d.ts +25 -0
- package/dist/vendor/@jinn-network/core/dist/scrub/types.js +1 -0
- package/dist/vendor/@jinn-network/core/dist/session-provenance.d.ts +75 -0
- package/dist/vendor/@jinn-network/core/dist/session-provenance.js +20 -0
- package/dist/vendor/@jinn-network/core/dist/skill-artifact.d.ts +442 -0
- package/dist/vendor/@jinn-network/core/dist/skill-artifact.js +136 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/hash-chain.d.ts +18 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/hash-chain.js +47 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/index.d.ts +4 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/index.js +4 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/schema.d.ts +606 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/schema.js +110 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/aider-history.d.ts +42 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/aider-history.js +181 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/claude-code-jsonl.d.ts +37 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/claude-code-jsonl.js +142 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/codex-session.d.ts +42 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/codex-session.js +235 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/continue-devdata.d.ts +41 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/continue-devdata.js +190 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/cursor-sqlite.d.ts +38 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/cursor-sqlite.js +118 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/gemini-session.d.ts +35 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/gemini-session.js +137 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/index.d.ts +7 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/index.js +7 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/types.d.ts +101 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-parsers/types.js +32 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/attrs.d.ts +4 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/attrs.js +30 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/claude-code-stream-json.d.ts +8 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/claude-code-stream-json.js +162 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/codex-exec-json.d.ts +8 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/codex-exec-json.js +253 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/index.d.ts +4 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/index.js +4 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/types.d.ts +18 -0
- package/dist/vendor/@jinn-network/core/dist/trajectory/transcript-to-spans/types.js +1 -0
- package/dist/vendor/@jinn-network/core/dist/window.d.ts +12 -0
- package/dist/vendor/@jinn-network/core/dist/window.js +5 -0
- package/dist/vendor/@jinn-network/core/package.json +38 -0
- package/dist/vendor/@jinn-network/plugin/dist/eligibility.d.ts +12 -0
- package/dist/vendor/@jinn-network/plugin/dist/eligibility.js +12 -0
- package/dist/vendor/@jinn-network/plugin/dist/history.d.ts +35 -0
- package/dist/vendor/@jinn-network/plugin/dist/history.js +140 -0
- package/dist/vendor/@jinn-network/plugin/dist/index.d.ts +32 -0
- package/dist/vendor/@jinn-network/plugin/dist/index.js +15 -0
- package/dist/vendor/@jinn-network/plugin/dist/outcome.d.ts +26 -0
- package/dist/vendor/@jinn-network/plugin/dist/outcome.js +23 -0
- package/dist/vendor/@jinn-network/plugin/dist/pickup.d.ts +101 -0
- package/dist/vendor/@jinn-network/plugin/dist/pickup.js +354 -0
- package/dist/vendor/@jinn-network/plugin/dist/plugin.d.ts +157 -0
- package/dist/vendor/@jinn-network/plugin/dist/plugin.js +586 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/contribution-port.d.ts +53 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/contribution-port.js +14 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/corpus-port.d.ts +63 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/corpus-port.js +1 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/evidence-port.d.ts +17 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/evidence-port.js +1 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/local-learning-port.d.ts +22 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/local-learning-port.js +1 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/skills-port.d.ts +12 -0
- package/dist/vendor/@jinn-network/plugin/dist/ports/skills-port.js +1 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/contribution-candidate.d.ts +116 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/contribution-candidate.js +63 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/eligibility-verdict.d.ts +8 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/eligibility-verdict.js +7 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/episode.d.ts +432 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/episode.js +452 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/history-entry.d.ts +40 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/history-entry.js +30 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/knowledge-hit.d.ts +27 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/knowledge-hit.js +23 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/knowledge-packet.d.ts +79 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/knowledge-packet.js +213 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/pickup-config.d.ts +20 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/pickup-config.js +34 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/session-summary.d.ts +17 -0
- package/dist/vendor/@jinn-network/plugin/dist/schemas/session-summary.js +19 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/contract-kits.d.ts +12 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/contract-kits.js +201 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-contribution.d.ts +93 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-contribution.js +104 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-corpus.d.ts +47 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-corpus.js +54 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-evidence.d.ts +335 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-evidence.js +23 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-local-learning.d.ts +25 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-local-learning.js +30 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-skills.d.ts +9 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing/in-memory-skills.js +16 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing.d.ts +6 -0
- package/dist/vendor/@jinn-network/plugin/dist/testing.js +8 -0
- package/dist/vendor/@jinn-network/plugin/dist/visibility.d.ts +7 -0
- package/dist/vendor/@jinn-network/plugin/dist/visibility.js +9 -0
- package/dist/vendor/@jinn-network/plugin/package.json +22 -0
- 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 +214 -0
- package/dist/vendor/@jinn-network/sdk/dist/jinn-repo.js +75 -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 +140 -0
- package/dist/vendor/@jinn-network/sdk/dist/payloads/jinn-repo.js +52 -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 +1 -1
- package/dist/vendor/@jinn-network/sdk/dist/payloads/swe-rebench-v2.js +1 -1
- 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/swe-rebench-v2.d.ts +34 -6
- package/dist/vendor/@jinn-network/sdk/dist/swe-rebench-v2.js +28 -5
- package/dist/vendor/@jinn-network/sdk/package.json +5 -1
- package/node_modules/@jinn-network/core/dist/canonical-json.d.ts +1 -0
- package/node_modules/@jinn-network/core/dist/canonical-json.js +67 -0
- package/node_modules/@jinn-network/core/dist/captured-task.d.ts +140 -0
- package/node_modules/@jinn-network/core/dist/captured-task.js +122 -0
- package/node_modules/@jinn-network/core/dist/contribution-store.d.ts +97 -0
- package/node_modules/@jinn-network/core/dist/contribution-store.js +770 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/acquire.d.ts +39 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/acquire.js +212 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/cache.d.ts +14 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/cache.js +17 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/capture-meta.d.ts +16 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/capture-meta.js +18 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/create-corpus.d.ts +2 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/create-corpus.js +97 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/fetch-artifact.d.ts +21 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/fetch-artifact.js +32 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/fetch.d.ts +12 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/fetch.js +24 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/http-discovery.d.ts +9 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/http-discovery.js +128 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/index.d.ts +10 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/index.js +10 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/ipfs.d.ts +5 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/ipfs.js +72 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/route-resolver.d.ts +16 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/route-resolver.js +19 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/types.d.ts +177 -0
- package/node_modules/@jinn-network/core/dist/corpus-read/types.js +42 -0
- package/node_modules/@jinn-network/core/dist/envelope.d.ts +134 -0
- package/node_modules/@jinn-network/core/dist/envelope.js +162 -0
- package/node_modules/@jinn-network/core/dist/evidence-adapter.d.ts +26 -0
- package/node_modules/@jinn-network/core/dist/evidence-adapter.js +321 -0
- package/node_modules/@jinn-network/core/dist/evidence-filesystem.d.ts +40 -0
- package/node_modules/@jinn-network/core/dist/evidence-filesystem.js +267 -0
- package/node_modules/@jinn-network/core/dist/evidence-index.d.ts +117 -0
- package/node_modules/@jinn-network/core/dist/evidence-index.js +1083 -0
- package/node_modules/@jinn-network/core/dist/evidence-store-lock.d.ts +2 -0
- package/node_modules/@jinn-network/core/dist/evidence-store-lock.js +208 -0
- package/node_modules/@jinn-network/core/dist/execution-envelope.d.ts +3142 -0
- package/node_modules/@jinn-network/core/dist/execution-envelope.js +203 -0
- package/node_modules/@jinn-network/core/dist/index.d.ts +12 -0
- package/node_modules/@jinn-network/core/dist/index.js +12 -0
- package/node_modules/@jinn-network/core/dist/manifest.d.ts +75 -0
- package/node_modules/@jinn-network/core/dist/manifest.js +184 -0
- package/node_modules/@jinn-network/core/dist/paired.d.ts +68 -0
- package/node_modules/@jinn-network/core/dist/paired.js +92 -0
- package/node_modules/@jinn-network/core/dist/scrub/build.d.ts +55 -0
- package/node_modules/@jinn-network/core/dist/scrub/build.js +87 -0
- package/node_modules/@jinn-network/core/dist/scrub/emit-scrub.d.ts +41 -0
- package/node_modules/@jinn-network/core/dist/scrub/emit-scrub.js +87 -0
- package/node_modules/@jinn-network/core/dist/scrub/index.d.ts +12 -0
- package/node_modules/@jinn-network/core/dist/scrub/index.js +12 -0
- package/node_modules/@jinn-network/core/dist/scrub/key-policy.d.ts +20 -0
- package/node_modules/@jinn-network/core/dist/scrub/key-policy.js +42 -0
- package/node_modules/@jinn-network/core/dist/scrub/layer2.d.ts +24 -0
- package/node_modules/@jinn-network/core/dist/scrub/layer2.js +33 -0
- package/node_modules/@jinn-network/core/dist/scrub/ml-pii-stage.d.ts +24 -0
- package/node_modules/@jinn-network/core/dist/scrub/ml-pii-stage.js +42 -0
- package/node_modules/@jinn-network/core/dist/scrub/openredaction-stage.d.ts +196 -0
- package/node_modules/@jinn-network/core/dist/scrub/openredaction-stage.js +270 -0
- package/node_modules/@jinn-network/core/dist/scrub/pii-build.d.ts +38 -0
- package/node_modules/@jinn-network/core/dist/scrub/pii-build.js +67 -0
- package/node_modules/@jinn-network/core/dist/scrub/pipeline.d.ts +38 -0
- package/node_modules/@jinn-network/core/dist/scrub/pipeline.js +83 -0
- package/node_modules/@jinn-network/core/dist/scrub/plain-patterns-stage.d.ts +42 -0
- package/node_modules/@jinn-network/core/dist/scrub/plain-patterns-stage.js +114 -0
- package/node_modules/@jinn-network/core/dist/scrub/secretlint-stage.d.ts +36 -0
- package/node_modules/@jinn-network/core/dist/scrub/secretlint-stage.js +249 -0
- package/node_modules/@jinn-network/core/dist/scrub/transformers-detector.d.ts +35 -0
- package/node_modules/@jinn-network/core/dist/scrub/transformers-detector.js +67 -0
- package/node_modules/@jinn-network/core/dist/scrub/types.d.ts +25 -0
- package/node_modules/@jinn-network/core/dist/scrub/types.js +1 -0
- package/node_modules/@jinn-network/core/dist/session-provenance.d.ts +75 -0
- package/node_modules/@jinn-network/core/dist/session-provenance.js +20 -0
- package/node_modules/@jinn-network/core/dist/skill-artifact.d.ts +442 -0
- package/node_modules/@jinn-network/core/dist/skill-artifact.js +136 -0
- package/node_modules/@jinn-network/core/dist/trajectory/hash-chain.d.ts +18 -0
- package/node_modules/@jinn-network/core/dist/trajectory/hash-chain.js +47 -0
- package/node_modules/@jinn-network/core/dist/trajectory/index.d.ts +4 -0
- package/node_modules/@jinn-network/core/dist/trajectory/index.js +4 -0
- package/node_modules/@jinn-network/core/dist/trajectory/schema.d.ts +606 -0
- package/node_modules/@jinn-network/core/dist/trajectory/schema.js +110 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/aider-history.d.ts +42 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/aider-history.js +181 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/claude-code-jsonl.d.ts +37 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/claude-code-jsonl.js +142 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/codex-session.d.ts +42 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/codex-session.js +235 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/continue-devdata.d.ts +41 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/continue-devdata.js +190 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/cursor-sqlite.d.ts +38 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/cursor-sqlite.js +118 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/gemini-session.d.ts +35 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/gemini-session.js +137 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/index.d.ts +7 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/index.js +7 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/types.d.ts +101 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-parsers/types.js +32 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/attrs.d.ts +4 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/attrs.js +30 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/claude-code-stream-json.d.ts +8 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/claude-code-stream-json.js +162 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/codex-exec-json.d.ts +8 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/codex-exec-json.js +253 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/index.d.ts +4 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/index.js +4 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/types.d.ts +18 -0
- package/node_modules/@jinn-network/core/dist/trajectory/transcript-to-spans/types.js +1 -0
- package/node_modules/@jinn-network/core/dist/window.d.ts +12 -0
- package/node_modules/@jinn-network/core/dist/window.js +5 -0
- package/node_modules/@jinn-network/core/package.json +61 -0
- package/node_modules/@jinn-network/plugin/dist/eligibility.d.ts +12 -0
- package/node_modules/@jinn-network/plugin/dist/eligibility.js +12 -0
- package/node_modules/@jinn-network/plugin/dist/history.d.ts +35 -0
- package/node_modules/@jinn-network/plugin/dist/history.js +140 -0
- package/node_modules/@jinn-network/plugin/dist/index.d.ts +32 -0
- package/node_modules/@jinn-network/plugin/dist/index.js +15 -0
- package/node_modules/@jinn-network/plugin/dist/outcome.d.ts +26 -0
- package/node_modules/@jinn-network/plugin/dist/outcome.js +23 -0
- package/node_modules/@jinn-network/plugin/dist/pickup.d.ts +101 -0
- package/node_modules/@jinn-network/plugin/dist/pickup.js +354 -0
- package/node_modules/@jinn-network/plugin/dist/plugin.d.ts +157 -0
- package/node_modules/@jinn-network/plugin/dist/plugin.js +586 -0
- package/node_modules/@jinn-network/plugin/dist/ports/contribution-port.d.ts +53 -0
- package/node_modules/@jinn-network/plugin/dist/ports/contribution-port.js +14 -0
- package/node_modules/@jinn-network/plugin/dist/ports/corpus-port.d.ts +63 -0
- package/node_modules/@jinn-network/plugin/dist/ports/corpus-port.js +1 -0
- package/node_modules/@jinn-network/plugin/dist/ports/evidence-port.d.ts +17 -0
- package/node_modules/@jinn-network/plugin/dist/ports/evidence-port.js +1 -0
- package/node_modules/@jinn-network/plugin/dist/ports/local-learning-port.d.ts +22 -0
- package/node_modules/@jinn-network/plugin/dist/ports/local-learning-port.js +1 -0
- package/node_modules/@jinn-network/plugin/dist/ports/skills-port.d.ts +12 -0
- package/node_modules/@jinn-network/plugin/dist/ports/skills-port.js +1 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/contribution-candidate.d.ts +116 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/contribution-candidate.js +63 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/eligibility-verdict.d.ts +8 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/eligibility-verdict.js +7 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/episode.d.ts +432 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/episode.js +452 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/history-entry.d.ts +40 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/history-entry.js +30 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/knowledge-hit.d.ts +27 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/knowledge-hit.js +23 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/knowledge-packet.d.ts +79 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/knowledge-packet.js +213 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/pickup-config.d.ts +20 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/pickup-config.js +34 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/session-summary.d.ts +17 -0
- package/node_modules/@jinn-network/plugin/dist/schemas/session-summary.js +19 -0
- package/node_modules/@jinn-network/plugin/dist/testing/contract-kits.d.ts +12 -0
- package/node_modules/@jinn-network/plugin/dist/testing/contract-kits.js +201 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-contribution.d.ts +93 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-contribution.js +104 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-corpus.d.ts +47 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-corpus.js +54 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-evidence.d.ts +335 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-evidence.js +23 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-local-learning.d.ts +25 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-local-learning.js +30 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-skills.d.ts +9 -0
- package/node_modules/@jinn-network/plugin/dist/testing/in-memory-skills.js +16 -0
- package/node_modules/@jinn-network/plugin/dist/testing.d.ts +6 -0
- package/node_modules/@jinn-network/plugin/dist/testing.js +8 -0
- package/node_modules/@jinn-network/plugin/dist/visibility.d.ts +7 -0
- package/node_modules/@jinn-network/plugin/dist/visibility.js +9 -0
- package/node_modules/@jinn-network/plugin/package.json +50 -0
- package/node_modules/@jinn-network/plugin/process-contract.json +8 -0
- package/package.json +60 -18
- 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/skills/jinn-operator/SKILL.md +29 -15
- 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-BVAWkLwY.css +0 -1
- package/dist/dashboard/assets/index-DEPqtGOA.js +0 -167
- 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
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* jinn-repo.v1 LIVE-ISSUE generator (issue #1893, Stage 1 Part 4 of
|
|
3
|
+
* spec/2026-07-20-autopilot-marketplace-execution.md §"Generator").
|
|
4
|
+
*
|
|
5
|
+
* Polls Jinn-Network/mono issues carrying the `engine:marketplace` label
|
|
6
|
+
* (applied host-side by Autopilot —
|
|
7
|
+
* `packages/autopilot/src/dispatcher/marketplace-route.ts`) and turns each
|
|
8
|
+
* into a `source: 'live-issue'` jinn-repo.v1 Task. The handoff between
|
|
9
|
+
* Autopilot and this generator is entirely GitHub state — the label
|
|
10
|
+
* (readiness signal) plus ONE hidden JSON-in-a-fenced-code-block "marker"
|
|
11
|
+
* comment carrying the frozen snapshot (title, body, base_commit, effort).
|
|
12
|
+
* This module never talks to Autopilot directly; it only reads what
|
|
13
|
+
* Autopilot wrote, via plain (optionally-authenticated) GitHub REST calls.
|
|
14
|
+
*
|
|
15
|
+
* ── WIRE FORMAT (must track marketplace-route.ts byte-for-byte) ──────────
|
|
16
|
+
*
|
|
17
|
+
* A marker comment body starts with `<!-- jinn-marketplace-snapshot:v1` and
|
|
18
|
+
* contains exactly one fenced ```json code block whose content parses as
|
|
19
|
+
* `{schemaVersion: "jinn-marketplace-snapshot.v1", issueNumber,
|
|
20
|
+
* snapshotHash, baseCommit, effort, title, body}`. There is deliberately NO
|
|
21
|
+
* shared code between `packages/autopilot` and `client` (the client package
|
|
22
|
+
* must not depend on `@jinn-network/autopilot`, and autopilot must not
|
|
23
|
+
* depend on `@jinn-network/client` — see `delivery-pr-bridge.ts`'s module
|
|
24
|
+
* doc for the identical trade elsewhere in this codebase); the coupling is
|
|
25
|
+
* the documented wire format only, re-parsed independently here.
|
|
26
|
+
*
|
|
27
|
+
* ── Marker authorship trust (issue #1893 Finding 1 — CRITICAL) ────────────
|
|
28
|
+
*
|
|
29
|
+
* `Jinn-Network/mono` is a public repo: ANY GitHub account can comment on a
|
|
30
|
+
* labeled issue with a body that *looks* like a marker (same
|
|
31
|
+
* `<!-- jinn-marketplace-snapshot:v1` prefix, same fenced JSON shape) but
|
|
32
|
+
* carries attacker-chosen `base_commit`/`problem_statement`/`effort`. Left
|
|
33
|
+
* unchecked, this generator would mint a FUNDED, claimable on-chain task from
|
|
34
|
+
* ANY such forgery — the daemon is the wallet-holder, so this is the one
|
|
35
|
+
* place the trust boundary actually matters. `parseMarketplaceMarker` alone
|
|
36
|
+
* only validates *shape*; it says nothing about *authorship*.
|
|
37
|
+
*
|
|
38
|
+
* Every comment is therefore filtered through `isTrustedMarkerAuthor` BEFORE
|
|
39
|
+
* `parseMarketplaceMarker` is even attempted (see the per-issue loop below).
|
|
40
|
+
* Trust is established one of two ways, both configured on
|
|
41
|
+
* `JinnRepoLiveGeneratorConfig`:
|
|
42
|
+
*
|
|
43
|
+
* - `markerAuthorLogin` — an exact GitHub login (case-insensitive) the
|
|
44
|
+
* comment's `user.login` (REST field) must match.
|
|
45
|
+
* - `markerTrustedAssociations` — a set of REST `author_association` values
|
|
46
|
+
* (`OWNER`, `MEMBER`, `COLLABORATOR`, ...) one of which the comment must
|
|
47
|
+
* carry. This MUST mirror the set
|
|
48
|
+
* `packages/autopilot/src/dispatcher/marketplace-route.ts` trusts
|
|
49
|
+
* autopilot-side (currently hardcoded there to `OWNER`/`MEMBER`/
|
|
50
|
+
* `COLLABORATOR` — see that module's "Marker authorship trust" doc) or a
|
|
51
|
+
* legitimate marker will be silently rejected. There is deliberately no
|
|
52
|
+
* shared import between the two packages (see below); the two constant
|
|
53
|
+
* sets must be kept in agreement by hand.
|
|
54
|
+
*
|
|
55
|
+
* **Fail closed.** If NEITHER `markerAuthorLogin` nor
|
|
56
|
+
* `markerTrustedAssociations` is configured, `isTrustedMarkerAuthor` trusts
|
|
57
|
+
* NOTHING — every comment is treated as untrusted, so no marker is ever
|
|
58
|
+
* found and no task is ever posted. A missing/misconfigured trust gate must
|
|
59
|
+
* never silently degrade to "trust everyone"; it degrades to "trust no one,"
|
|
60
|
+
* which is loudly visible (labeled issues pile up with a
|
|
61
|
+
* "no valid snapshot marker" warning) rather than silently exploitable.
|
|
62
|
+
*
|
|
63
|
+
* ── Dedup / re-post (the daemon-side half of "cancel + re-post on edit") ─
|
|
64
|
+
*
|
|
65
|
+
* This generator's own state file (mirrors `jinn-repo-auto.ts`'s `posted`
|
|
66
|
+
* counters) tracks the last-posted snapshot hash PER ISSUE NUMBER. A tick
|
|
67
|
+
* emits a fresh Task for an issue only when its CURRENT marker hash differs
|
|
68
|
+
* from the last one this generator posted for that issue — a material edit
|
|
69
|
+
* (new hash) naturally produces a new Task; an unchanged snapshot is a
|
|
70
|
+
* no-op. `<issueNumber>:<snapshotHash>` is also carried on
|
|
71
|
+
* `task.eligibility` (mirrors `eligibility.instance_id` on the retrospective
|
|
72
|
+
* generator) as the intended bucket key for the posting layer's own
|
|
73
|
+
* once-per-bucket dedup — see `client/src/main.ts`'s `bucketKeyForTask`.
|
|
74
|
+
*
|
|
75
|
+
* ── Retraction (soft cancel only) ─────────────────────────────────────────
|
|
76
|
+
*
|
|
77
|
+
* There is no daemon-side "cancel" logic at all: retraction is Autopilot
|
|
78
|
+
* removing the label. Once removed, the issue is simply absent from the
|
|
79
|
+
* next poll — no new Task is ever built for it again (unless re-labeled with
|
|
80
|
+
* a fresh marker). A Task already posted before retraction is NOT withdrawn
|
|
81
|
+
* — there is no on-chain cancel path (`TaskCoordinator`'s `Cancelled` enum
|
|
82
|
+
* has zero transitions) — it stays open, bounded by `claimPolicy.maxClaims
|
|
83
|
+
* = 1`, until claimed or its window lapses.
|
|
84
|
+
*
|
|
85
|
+
* `claimPolicy.maxClaims = 1`: no racing claims for a live issue (spec Open
|
|
86
|
+
* Decisions: "Leaning maxClaims=1 + re-post while the fleet is closed") —
|
|
87
|
+
* deliberately narrower than the retrospective generator's parallel-racing
|
|
88
|
+
* default (`JINN_REPO_V1_SOLVER_NET_CONTRACT.claimPolicyDefaults`).
|
|
89
|
+
*/
|
|
90
|
+
import { z } from 'zod/v3';
|
|
91
|
+
import type { TaskGenerator } from '../tasks/sources.js';
|
|
92
|
+
import type { LaunchedSolverNetRecord } from '../solvernets/store.js';
|
|
93
|
+
declare const MarkerPayloadSchema: z.ZodObject<{
|
|
94
|
+
schemaVersion: z.ZodLiteral<"jinn-marketplace-snapshot.v1">;
|
|
95
|
+
issueNumber: z.ZodNumber;
|
|
96
|
+
snapshotHash: z.ZodString;
|
|
97
|
+
baseCommit: z.ZodString;
|
|
98
|
+
effort: z.ZodNullable<z.ZodString>;
|
|
99
|
+
title: z.ZodString;
|
|
100
|
+
body: z.ZodString;
|
|
101
|
+
}, "strip", z.ZodTypeAny, {
|
|
102
|
+
schemaVersion: "jinn-marketplace-snapshot.v1";
|
|
103
|
+
title: string;
|
|
104
|
+
body: string;
|
|
105
|
+
baseCommit: string;
|
|
106
|
+
effort: string | null;
|
|
107
|
+
issueNumber: number;
|
|
108
|
+
snapshotHash: string;
|
|
109
|
+
}, {
|
|
110
|
+
schemaVersion: "jinn-marketplace-snapshot.v1";
|
|
111
|
+
title: string;
|
|
112
|
+
body: string;
|
|
113
|
+
baseCommit: string;
|
|
114
|
+
effort: string | null;
|
|
115
|
+
issueNumber: number;
|
|
116
|
+
snapshotHash: string;
|
|
117
|
+
}>;
|
|
118
|
+
export type MarketplaceMarkerPayload = z.infer<typeof MarkerPayloadSchema>;
|
|
119
|
+
/**
|
|
120
|
+
* Parse a marker comment body; returns null for anything that is not ours,
|
|
121
|
+
* malformed, or carries a `base_commit` this generator cannot use (never
|
|
122
|
+
* throws — a bad/foreign comment is just not a marker, never a hard error).
|
|
123
|
+
*/
|
|
124
|
+
export declare function parseMarketplaceMarker(commentBody: string): MarketplaceMarkerPayload | null;
|
|
125
|
+
export type GitHubFetch = (input: string, init?: {
|
|
126
|
+
headers?: Record<string, string>;
|
|
127
|
+
}) => Promise<{
|
|
128
|
+
ok: boolean;
|
|
129
|
+
status: number;
|
|
130
|
+
json(): Promise<unknown>;
|
|
131
|
+
}>;
|
|
132
|
+
interface GhComment {
|
|
133
|
+
body?: string;
|
|
134
|
+
/** REST field: `GET /repos/{repo}/issues/{n}/comments` returns `user.login`. */
|
|
135
|
+
user?: {
|
|
136
|
+
login?: string;
|
|
137
|
+
};
|
|
138
|
+
/** REST field: the commenter's GitHub-computed relationship to the repo
|
|
139
|
+
* (`OWNER`, `MEMBER`, `COLLABORATOR`, `CONTRIBUTOR`, `NONE`, ...). See
|
|
140
|
+
* module doc "Marker authorship trust". */
|
|
141
|
+
author_association?: string;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Trust gate for "is this comment's author allowed to author a marker" —
|
|
145
|
+
* see module doc "Marker authorship trust" (issue #1893 Finding 1). Fails
|
|
146
|
+
* closed: with neither `markerAuthorLogin` nor `markerTrustedAssociations`
|
|
147
|
+
* configured, nothing is trusted.
|
|
148
|
+
*/
|
|
149
|
+
export declare function isTrustedMarkerAuthor(comment: GhComment, markerAuthorLogin: string | undefined, markerTrustedAssociations: readonly string[] | undefined): boolean;
|
|
150
|
+
export interface JinnRepoLiveGeneratorConfig {
|
|
151
|
+
stateDir: string;
|
|
152
|
+
solverNetManifestCid?: string;
|
|
153
|
+
/** The opt-in label Autopilot applies. Default `engine:marketplace`. */
|
|
154
|
+
label?: string;
|
|
155
|
+
/** Default `Jinn-Network/mono`. */
|
|
156
|
+
repo?: string;
|
|
157
|
+
/** Max tasks emitted per tick (default 5). */
|
|
158
|
+
maxPerTick?: number;
|
|
159
|
+
/** Injectable for tests — never real network in a test process. */
|
|
160
|
+
fetchImpl?: GitHubFetch;
|
|
161
|
+
/** Optional GitHub token — public reads work unauthenticated, but a token
|
|
162
|
+
* raises the REST rate-limit ceiling for a long-lived poller. */
|
|
163
|
+
token?: string;
|
|
164
|
+
claimLeaseTtlSeconds?: number;
|
|
165
|
+
/**
|
|
166
|
+
* Exact GitHub login (case-insensitive) a marker comment's author must
|
|
167
|
+
* match. Takes precedence over `markerTrustedAssociations` when both are
|
|
168
|
+
* set. See module doc "Marker authorship trust" (issue #1893 Finding 1) —
|
|
169
|
+
* with NEITHER this nor `markerTrustedAssociations` configured, every
|
|
170
|
+
* comment is untrusted and no task is ever posted (fail closed).
|
|
171
|
+
*/
|
|
172
|
+
markerAuthorLogin?: string;
|
|
173
|
+
/**
|
|
174
|
+
* Allowed `author_association` values (GitHub REST enum: `OWNER`,
|
|
175
|
+
* `MEMBER`, `COLLABORATOR`, `CONTRIBUTOR`, `NONE`, ...) for a marker
|
|
176
|
+
* comment's author. MUST mirror the set
|
|
177
|
+
* `packages/autopilot/src/dispatcher/marketplace-route.ts` trusts
|
|
178
|
+
* autopilot-side (currently `OWNER`/`MEMBER`/`COLLABORATOR`) or a
|
|
179
|
+
* legitimate marker will be silently rejected. See module doc "Marker
|
|
180
|
+
* authorship trust".
|
|
181
|
+
*/
|
|
182
|
+
markerTrustedAssociations?: string[];
|
|
183
|
+
}
|
|
184
|
+
export declare function makeJinnRepoLiveGenerator(config: JinnRepoLiveGeneratorConfig): TaskGenerator;
|
|
185
|
+
export interface MakeJinnRepoLiveGeneratorForLaunchedRecordOpts {
|
|
186
|
+
recordRef: {
|
|
187
|
+
current: LaunchedSolverNetRecord;
|
|
188
|
+
};
|
|
189
|
+
staticConfig?: {
|
|
190
|
+
stateDir?: string;
|
|
191
|
+
label?: string;
|
|
192
|
+
repo?: string;
|
|
193
|
+
maxPerTick?: number;
|
|
194
|
+
fetchImpl?: GitHubFetch;
|
|
195
|
+
token?: string;
|
|
196
|
+
/** See `JinnRepoLiveGeneratorConfig.markerAuthorLogin` — issue #1893 Finding 1. */
|
|
197
|
+
markerAuthorLogin?: string;
|
|
198
|
+
/** See `JinnRepoLiveGeneratorConfig.markerTrustedAssociations` — issue #1893 Finding 1. */
|
|
199
|
+
markerTrustedAssociations?: string[];
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
export declare function makeJinnRepoLiveGeneratorForLaunchedRecord(opts: MakeJinnRepoLiveGeneratorForLaunchedRecordOpts): TaskGenerator;
|
|
203
|
+
export {};
|
|
@@ -0,0 +1,348 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* jinn-repo.v1 LIVE-ISSUE generator (issue #1893, Stage 1 Part 4 of
|
|
3
|
+
* spec/2026-07-20-autopilot-marketplace-execution.md §"Generator").
|
|
4
|
+
*
|
|
5
|
+
* Polls Jinn-Network/mono issues carrying the `engine:marketplace` label
|
|
6
|
+
* (applied host-side by Autopilot —
|
|
7
|
+
* `packages/autopilot/src/dispatcher/marketplace-route.ts`) and turns each
|
|
8
|
+
* into a `source: 'live-issue'` jinn-repo.v1 Task. The handoff between
|
|
9
|
+
* Autopilot and this generator is entirely GitHub state — the label
|
|
10
|
+
* (readiness signal) plus ONE hidden JSON-in-a-fenced-code-block "marker"
|
|
11
|
+
* comment carrying the frozen snapshot (title, body, base_commit, effort).
|
|
12
|
+
* This module never talks to Autopilot directly; it only reads what
|
|
13
|
+
* Autopilot wrote, via plain (optionally-authenticated) GitHub REST calls.
|
|
14
|
+
*
|
|
15
|
+
* ── WIRE FORMAT (must track marketplace-route.ts byte-for-byte) ──────────
|
|
16
|
+
*
|
|
17
|
+
* A marker comment body starts with `<!-- jinn-marketplace-snapshot:v1` and
|
|
18
|
+
* contains exactly one fenced ```json code block whose content parses as
|
|
19
|
+
* `{schemaVersion: "jinn-marketplace-snapshot.v1", issueNumber,
|
|
20
|
+
* snapshotHash, baseCommit, effort, title, body}`. There is deliberately NO
|
|
21
|
+
* shared code between `packages/autopilot` and `client` (the client package
|
|
22
|
+
* must not depend on `@jinn-network/autopilot`, and autopilot must not
|
|
23
|
+
* depend on `@jinn-network/client` — see `delivery-pr-bridge.ts`'s module
|
|
24
|
+
* doc for the identical trade elsewhere in this codebase); the coupling is
|
|
25
|
+
* the documented wire format only, re-parsed independently here.
|
|
26
|
+
*
|
|
27
|
+
* ── Marker authorship trust (issue #1893 Finding 1 — CRITICAL) ────────────
|
|
28
|
+
*
|
|
29
|
+
* `Jinn-Network/mono` is a public repo: ANY GitHub account can comment on a
|
|
30
|
+
* labeled issue with a body that *looks* like a marker (same
|
|
31
|
+
* `<!-- jinn-marketplace-snapshot:v1` prefix, same fenced JSON shape) but
|
|
32
|
+
* carries attacker-chosen `base_commit`/`problem_statement`/`effort`. Left
|
|
33
|
+
* unchecked, this generator would mint a FUNDED, claimable on-chain task from
|
|
34
|
+
* ANY such forgery — the daemon is the wallet-holder, so this is the one
|
|
35
|
+
* place the trust boundary actually matters. `parseMarketplaceMarker` alone
|
|
36
|
+
* only validates *shape*; it says nothing about *authorship*.
|
|
37
|
+
*
|
|
38
|
+
* Every comment is therefore filtered through `isTrustedMarkerAuthor` BEFORE
|
|
39
|
+
* `parseMarketplaceMarker` is even attempted (see the per-issue loop below).
|
|
40
|
+
* Trust is established one of two ways, both configured on
|
|
41
|
+
* `JinnRepoLiveGeneratorConfig`:
|
|
42
|
+
*
|
|
43
|
+
* - `markerAuthorLogin` — an exact GitHub login (case-insensitive) the
|
|
44
|
+
* comment's `user.login` (REST field) must match.
|
|
45
|
+
* - `markerTrustedAssociations` — a set of REST `author_association` values
|
|
46
|
+
* (`OWNER`, `MEMBER`, `COLLABORATOR`, ...) one of which the comment must
|
|
47
|
+
* carry. This MUST mirror the set
|
|
48
|
+
* `packages/autopilot/src/dispatcher/marketplace-route.ts` trusts
|
|
49
|
+
* autopilot-side (currently hardcoded there to `OWNER`/`MEMBER`/
|
|
50
|
+
* `COLLABORATOR` — see that module's "Marker authorship trust" doc) or a
|
|
51
|
+
* legitimate marker will be silently rejected. There is deliberately no
|
|
52
|
+
* shared import between the two packages (see below); the two constant
|
|
53
|
+
* sets must be kept in agreement by hand.
|
|
54
|
+
*
|
|
55
|
+
* **Fail closed.** If NEITHER `markerAuthorLogin` nor
|
|
56
|
+
* `markerTrustedAssociations` is configured, `isTrustedMarkerAuthor` trusts
|
|
57
|
+
* NOTHING — every comment is treated as untrusted, so no marker is ever
|
|
58
|
+
* found and no task is ever posted. A missing/misconfigured trust gate must
|
|
59
|
+
* never silently degrade to "trust everyone"; it degrades to "trust no one,"
|
|
60
|
+
* which is loudly visible (labeled issues pile up with a
|
|
61
|
+
* "no valid snapshot marker" warning) rather than silently exploitable.
|
|
62
|
+
*
|
|
63
|
+
* ── Dedup / re-post (the daemon-side half of "cancel + re-post on edit") ─
|
|
64
|
+
*
|
|
65
|
+
* This generator's own state file (mirrors `jinn-repo-auto.ts`'s `posted`
|
|
66
|
+
* counters) tracks the last-posted snapshot hash PER ISSUE NUMBER. A tick
|
|
67
|
+
* emits a fresh Task for an issue only when its CURRENT marker hash differs
|
|
68
|
+
* from the last one this generator posted for that issue — a material edit
|
|
69
|
+
* (new hash) naturally produces a new Task; an unchanged snapshot is a
|
|
70
|
+
* no-op. `<issueNumber>:<snapshotHash>` is also carried on
|
|
71
|
+
* `task.eligibility` (mirrors `eligibility.instance_id` on the retrospective
|
|
72
|
+
* generator) as the intended bucket key for the posting layer's own
|
|
73
|
+
* once-per-bucket dedup — see `client/src/main.ts`'s `bucketKeyForTask`.
|
|
74
|
+
*
|
|
75
|
+
* ── Retraction (soft cancel only) ─────────────────────────────────────────
|
|
76
|
+
*
|
|
77
|
+
* There is no daemon-side "cancel" logic at all: retraction is Autopilot
|
|
78
|
+
* removing the label. Once removed, the issue is simply absent from the
|
|
79
|
+
* next poll — no new Task is ever built for it again (unless re-labeled with
|
|
80
|
+
* a fresh marker). A Task already posted before retraction is NOT withdrawn
|
|
81
|
+
* — there is no on-chain cancel path (`TaskCoordinator`'s `Cancelled` enum
|
|
82
|
+
* has zero transitions) — it stays open, bounded by `claimPolicy.maxClaims
|
|
83
|
+
* = 1`, until claimed or its window lapses.
|
|
84
|
+
*
|
|
85
|
+
* `claimPolicy.maxClaims = 1`: no racing claims for a live issue (spec Open
|
|
86
|
+
* Decisions: "Leaning maxClaims=1 + re-post while the fleet is closed") —
|
|
87
|
+
* deliberately narrower than the retrospective generator's parallel-racing
|
|
88
|
+
* default (`JINN_REPO_V1_SOLVER_NET_CONTRACT.claimPolicyDefaults`).
|
|
89
|
+
*/
|
|
90
|
+
import { randomUUID } from 'node:crypto';
|
|
91
|
+
import { readFile, writeFile, mkdir, rename } from 'node:fs/promises';
|
|
92
|
+
import { join } from 'node:path';
|
|
93
|
+
import { z } from 'zod/v3';
|
|
94
|
+
import { JinnRepoLiveIssueTaskSchema } from './jinn-repo.js';
|
|
95
|
+
const SOLVER_TYPE = 'jinn-repo.v1';
|
|
96
|
+
const CONTRACT_ID = 'jinn-repo';
|
|
97
|
+
const CONTRACT_VERSION = 'v1';
|
|
98
|
+
const DEFAULT_LABEL = 'engine:marketplace';
|
|
99
|
+
const DEFAULT_REPO = 'Jinn-Network/mono';
|
|
100
|
+
const DEFAULT_MAX_PER_TICK = 5;
|
|
101
|
+
/** On-chain claim-window deadline applied to each posted Task. */
|
|
102
|
+
const DEFAULT_POSTING_WINDOW_MS = 60 * 60 * 1000; // 1 hour
|
|
103
|
+
/** Claim lease, mirrors the jinn-repo contract default (coding tasks need more time). */
|
|
104
|
+
const DEFAULT_CLAIM_LEASE_TTL_SECONDS = 60 * 60;
|
|
105
|
+
const STATE_SCHEMA_VERSION = 'jinn-repo-live-generator-state.v1';
|
|
106
|
+
// ── Marker wire format (mirrors marketplace-route.ts — see module doc) ────
|
|
107
|
+
const MARKER_SCHEMA_VERSION = 'jinn-marketplace-snapshot.v1';
|
|
108
|
+
const MARKER_PREFIX = '<!-- jinn-marketplace-snapshot:v1';
|
|
109
|
+
const JSON_FENCE_RE = /```json\n([\s\S]*?)\n```/;
|
|
110
|
+
const MarkerPayloadSchema = z.object({
|
|
111
|
+
schemaVersion: z.literal(MARKER_SCHEMA_VERSION),
|
|
112
|
+
issueNumber: z.number().int().positive(),
|
|
113
|
+
snapshotHash: z.string().min(1),
|
|
114
|
+
baseCommit: z.string().regex(/^[0-9a-f]{40}$/, 'base_commit must be a 40-char hex SHA'),
|
|
115
|
+
effort: z.string().nullable(),
|
|
116
|
+
title: z.string(),
|
|
117
|
+
body: z.string(),
|
|
118
|
+
});
|
|
119
|
+
/**
|
|
120
|
+
* Parse a marker comment body; returns null for anything that is not ours,
|
|
121
|
+
* malformed, or carries a `base_commit` this generator cannot use (never
|
|
122
|
+
* throws — a bad/foreign comment is just not a marker, never a hard error).
|
|
123
|
+
*/
|
|
124
|
+
export function parseMarketplaceMarker(commentBody) {
|
|
125
|
+
if (!commentBody.startsWith(MARKER_PREFIX))
|
|
126
|
+
return null;
|
|
127
|
+
const m = JSON_FENCE_RE.exec(commentBody);
|
|
128
|
+
if (!m)
|
|
129
|
+
return null;
|
|
130
|
+
let raw;
|
|
131
|
+
try {
|
|
132
|
+
raw = JSON.parse(m[1]);
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
return null;
|
|
136
|
+
}
|
|
137
|
+
const parsed = MarkerPayloadSchema.safeParse(raw);
|
|
138
|
+
return parsed.success ? parsed.data : null;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Trust gate for "is this comment's author allowed to author a marker" —
|
|
142
|
+
* see module doc "Marker authorship trust" (issue #1893 Finding 1). Fails
|
|
143
|
+
* closed: with neither `markerAuthorLogin` nor `markerTrustedAssociations`
|
|
144
|
+
* configured, nothing is trusted.
|
|
145
|
+
*/
|
|
146
|
+
export function isTrustedMarkerAuthor(comment, markerAuthorLogin, markerTrustedAssociations) {
|
|
147
|
+
if (markerAuthorLogin) {
|
|
148
|
+
return (comment.user?.login ?? '').toLowerCase() === markerAuthorLogin.toLowerCase();
|
|
149
|
+
}
|
|
150
|
+
if (markerTrustedAssociations && markerTrustedAssociations.length > 0) {
|
|
151
|
+
return comment.author_association != null && markerTrustedAssociations.includes(comment.author_association);
|
|
152
|
+
}
|
|
153
|
+
return false; // fail closed — no trust config configured ⇒ trust nothing
|
|
154
|
+
}
|
|
155
|
+
async function fetchJson(fetchImpl, url, headers, resource) {
|
|
156
|
+
let response;
|
|
157
|
+
try {
|
|
158
|
+
response = await fetchImpl(url, { headers });
|
|
159
|
+
}
|
|
160
|
+
catch (err) {
|
|
161
|
+
throw new Error(`GitHub ${resource} request failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
162
|
+
}
|
|
163
|
+
if (!response || !response.ok) {
|
|
164
|
+
throw new Error(`GitHub ${resource} request failed (status ${String(response?.status)})`);
|
|
165
|
+
}
|
|
166
|
+
try {
|
|
167
|
+
return await response.json();
|
|
168
|
+
}
|
|
169
|
+
catch (err) {
|
|
170
|
+
throw new Error(`malformed GitHub ${resource} response: ${err instanceof Error ? err.message : String(err)}`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
function stateFilePath(stateDir) {
|
|
174
|
+
return join(stateDir, 'jinn-repo-live-generator-state.json');
|
|
175
|
+
}
|
|
176
|
+
async function readState(stateDir) {
|
|
177
|
+
try {
|
|
178
|
+
const raw = await readFile(stateFilePath(stateDir), 'utf8');
|
|
179
|
+
const parsed = JSON.parse(raw);
|
|
180
|
+
if (parsed && typeof parsed === 'object' && parsed.issues)
|
|
181
|
+
return parsed;
|
|
182
|
+
}
|
|
183
|
+
catch {
|
|
184
|
+
// absent or unreadable — start empty
|
|
185
|
+
}
|
|
186
|
+
return { schemaVersion: STATE_SCHEMA_VERSION, issues: {} };
|
|
187
|
+
}
|
|
188
|
+
async function writeStateAtomic(stateDir, state) {
|
|
189
|
+
await mkdir(stateDir, { recursive: true });
|
|
190
|
+
const target = stateFilePath(stateDir);
|
|
191
|
+
const tmp = `${target}.${process.pid}.${Date.now()}.tmp`;
|
|
192
|
+
await writeFile(tmp, JSON.stringify(state, null, 2));
|
|
193
|
+
await rename(tmp, target);
|
|
194
|
+
}
|
|
195
|
+
// ── Task assembly ──────────────────────────────────────────────────────────
|
|
196
|
+
const EFFORT_ENUM = ['low', 'medium', 'high', 'xhigh', 'max'];
|
|
197
|
+
/** Board Effort ('Low'|'XHigh'|...) or an already-lowercase marker value → the schema enum. */
|
|
198
|
+
function normalizeEffort(effort) {
|
|
199
|
+
if (effort == null)
|
|
200
|
+
return undefined;
|
|
201
|
+
const lowered = effort.toLowerCase();
|
|
202
|
+
return EFFORT_ENUM.includes(lowered) ? lowered : undefined;
|
|
203
|
+
}
|
|
204
|
+
function instanceIdFor(repo, issueNumber, hash) {
|
|
205
|
+
const repoSlug = repo.replace('/', '__');
|
|
206
|
+
return `${repoSlug}-issue-${issueNumber}-${hash.slice(0, 12)}`;
|
|
207
|
+
}
|
|
208
|
+
function jinnRepoLiveClaimPolicy(claimLeaseTtlSeconds) {
|
|
209
|
+
return {
|
|
210
|
+
mode: 'exclusive',
|
|
211
|
+
maxClaims: 1,
|
|
212
|
+
maxClaimsPerOperator: 1,
|
|
213
|
+
claimLeaseTtlSeconds,
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
export function makeJinnRepoLiveGenerator(config) {
|
|
217
|
+
const label = config.label ?? DEFAULT_LABEL;
|
|
218
|
+
const repo = config.repo ?? DEFAULT_REPO;
|
|
219
|
+
const maxPerTick = config.maxPerTick ?? DEFAULT_MAX_PER_TICK;
|
|
220
|
+
const fetchImpl = config.fetchImpl ?? fetch;
|
|
221
|
+
const claimPolicy = jinnRepoLiveClaimPolicy(config.claimLeaseTtlSeconds ?? DEFAULT_CLAIM_LEASE_TTL_SECONDS);
|
|
222
|
+
const markerAuthorLogin = config.markerAuthorLogin;
|
|
223
|
+
const markerTrustedAssociations = config.markerTrustedAssociations;
|
|
224
|
+
const headers = {
|
|
225
|
+
Accept: 'application/vnd.github+json',
|
|
226
|
+
...(config.token ? { Authorization: `Bearer ${config.token}` } : {}),
|
|
227
|
+
};
|
|
228
|
+
return async () => {
|
|
229
|
+
const state = await readState(config.stateDir);
|
|
230
|
+
let labeled;
|
|
231
|
+
try {
|
|
232
|
+
const url = `https://api.github.com/repos/${repo}/issues?labels=${encodeURIComponent(label)}` +
|
|
233
|
+
'&state=open&per_page=100';
|
|
234
|
+
const raw = await fetchJson(fetchImpl, url, headers, 'labeled issues');
|
|
235
|
+
labeled = Array.isArray(raw) ? raw : [];
|
|
236
|
+
}
|
|
237
|
+
catch (err) {
|
|
238
|
+
console.warn(`[jinn-repo-live-gen] labeled-issue poll failed (skipping this tick): ${err instanceof Error ? err.message : String(err)}`);
|
|
239
|
+
return null;
|
|
240
|
+
}
|
|
241
|
+
const now = Date.now();
|
|
242
|
+
const windowEndTs = now + DEFAULT_POSTING_WINDOW_MS;
|
|
243
|
+
const tasks = [];
|
|
244
|
+
for (const entry of labeled) {
|
|
245
|
+
if (tasks.length >= maxPerTick)
|
|
246
|
+
break;
|
|
247
|
+
let comments;
|
|
248
|
+
try {
|
|
249
|
+
const commentsUrl = `https://api.github.com/repos/${repo}/issues/${entry.number}/comments?per_page=100`;
|
|
250
|
+
const raw = await fetchJson(fetchImpl, commentsUrl, headers, `comments for #${entry.number}`);
|
|
251
|
+
comments = Array.isArray(raw) ? raw : [];
|
|
252
|
+
}
|
|
253
|
+
catch (err) {
|
|
254
|
+
console.warn(`[jinn-repo-live-gen] comment fetch failed for #${entry.number} (skipping this tick): ` +
|
|
255
|
+
`${err instanceof Error ? err.message : String(err)}`);
|
|
256
|
+
continue;
|
|
257
|
+
}
|
|
258
|
+
// Trust gate BEFORE shape parsing (issue #1893 Finding 1): an untrusted
|
|
259
|
+
// comment is never even offered to parseMarketplaceMarker, no matter
|
|
260
|
+
// how marker-shaped its body is.
|
|
261
|
+
const trustedComments = comments.filter((c) => isTrustedMarkerAuthor(c, markerAuthorLogin, markerTrustedAssociations));
|
|
262
|
+
const marker = trustedComments
|
|
263
|
+
.map((c) => (c.body != null ? parseMarketplaceMarker(c.body) : null))
|
|
264
|
+
.find((m) => m != null) ?? null;
|
|
265
|
+
if (marker == null) {
|
|
266
|
+
const forged = comments.some((c) => !isTrustedMarkerAuthor(c, markerAuthorLogin, markerTrustedAssociations) &&
|
|
267
|
+
c.body != null &&
|
|
268
|
+
parseMarketplaceMarker(c.body) != null);
|
|
269
|
+
if (forged) {
|
|
270
|
+
// A marker-shaped comment exists but its author is untrusted —
|
|
271
|
+
// never throws, but distinct from "no marker yet" for observability.
|
|
272
|
+
console.warn(`[jinn-repo-live-gen] #${entry.number} carries a marker-shaped comment from an untrusted author — ignored`);
|
|
273
|
+
}
|
|
274
|
+
else {
|
|
275
|
+
// Labeled but no valid marker yet (label/comment race, or a foreign
|
|
276
|
+
// label reuse) — never throws, just skipped with a log; the next
|
|
277
|
+
// tick re-checks.
|
|
278
|
+
console.warn(`[jinn-repo-live-gen] #${entry.number} carries "${label}" but no valid snapshot marker — skipped`);
|
|
279
|
+
}
|
|
280
|
+
continue;
|
|
281
|
+
}
|
|
282
|
+
const stateKey = String(marker.issueNumber);
|
|
283
|
+
if (state.issues[stateKey]?.lastPostedHash === marker.snapshotHash)
|
|
284
|
+
continue; // already posted this exact snapshot
|
|
285
|
+
const instanceId = instanceIdFor(repo, marker.issueNumber, marker.snapshotHash);
|
|
286
|
+
const effort = normalizeEffort(marker.effort);
|
|
287
|
+
const specDoc = JinnRepoLiveIssueTaskSchema.parse({
|
|
288
|
+
schemaVersion: 'jinn-repo.v1',
|
|
289
|
+
source: 'live-issue',
|
|
290
|
+
instance_id: instanceId,
|
|
291
|
+
repo,
|
|
292
|
+
base_commit: marker.baseCommit,
|
|
293
|
+
language: 'typescript',
|
|
294
|
+
problem_statement: `${marker.title}\n\n${marker.body}`,
|
|
295
|
+
issue_number: marker.issueNumber,
|
|
296
|
+
...(effort ? { effort } : {}),
|
|
297
|
+
});
|
|
298
|
+
tasks.push({
|
|
299
|
+
id: randomUUID(),
|
|
300
|
+
description: `Jinn repo live issue #${marker.issueNumber}: ${marker.title}`,
|
|
301
|
+
solverType: SOLVER_TYPE,
|
|
302
|
+
contractId: CONTRACT_ID,
|
|
303
|
+
contractVersion: CONTRACT_VERSION,
|
|
304
|
+
...(config.solverNetManifestCid ? { solverNetManifestCid: config.solverNetManifestCid } : {}),
|
|
305
|
+
role: 'restoration',
|
|
306
|
+
window: { startTs: now, endTs: windowEndTs },
|
|
307
|
+
claimPolicy,
|
|
308
|
+
spec: specDoc,
|
|
309
|
+
eligibility: { issue_number: marker.issueNumber, snapshot_hash: marker.snapshotHash },
|
|
310
|
+
});
|
|
311
|
+
state.issues[stateKey] = { lastPostedHash: marker.snapshotHash };
|
|
312
|
+
}
|
|
313
|
+
if (tasks.length === 0)
|
|
314
|
+
return null;
|
|
315
|
+
await writeStateAtomic(config.stateDir, state);
|
|
316
|
+
return tasks;
|
|
317
|
+
};
|
|
318
|
+
}
|
|
319
|
+
function defaultStateDir() {
|
|
320
|
+
const stateRoot = process.env['JINN_STATE_DIR'];
|
|
321
|
+
if (stateRoot)
|
|
322
|
+
return join(stateRoot, 'jinn-repo-live');
|
|
323
|
+
return join(process.env['HOME'] ?? '', '.jinn-client', 'jinn-repo-live');
|
|
324
|
+
}
|
|
325
|
+
export function makeJinnRepoLiveGeneratorForLaunchedRecord(opts) {
|
|
326
|
+
const { recordRef, staticConfig = {} } = opts;
|
|
327
|
+
const stateDir = staticConfig.stateDir ?? process.env['JINN_JINN_REPO_LIVE_STATE_DIR'] ?? defaultStateDir();
|
|
328
|
+
const generator = makeJinnRepoLiveGenerator({
|
|
329
|
+
stateDir,
|
|
330
|
+
solverNetManifestCid: recordRef.current.manifestCid,
|
|
331
|
+
label: staticConfig.label,
|
|
332
|
+
repo: staticConfig.repo,
|
|
333
|
+
maxPerTick: staticConfig.maxPerTick,
|
|
334
|
+
fetchImpl: staticConfig.fetchImpl,
|
|
335
|
+
token: staticConfig.token,
|
|
336
|
+
markerAuthorLogin: staticConfig.markerAuthorLogin,
|
|
337
|
+
markerTrustedAssociations: staticConfig.markerTrustedAssociations,
|
|
338
|
+
});
|
|
339
|
+
return async () => {
|
|
340
|
+
const record = recordRef.current;
|
|
341
|
+
if (record.status !== 'launched')
|
|
342
|
+
return null;
|
|
343
|
+
if (!record.generatorEnabled)
|
|
344
|
+
return null;
|
|
345
|
+
return generator();
|
|
346
|
+
};
|
|
347
|
+
}
|
|
348
|
+
//# sourceMappingURL=jinn-repo-live-auto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jinn-repo-live-auto.js","sourceRoot":"","sources":["../../src/solver-types/jinn-repo-live-auto.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* jinn-repo SolverType task schema — thin re-export of the SDK's schema.
|
|
3
|
+
*
|
|
4
|
+
* The SDK copy (`packages/sdk/src/jinn-repo.ts`, exported via
|
|
5
|
+
* `@jinn-network/sdk/solvernets/jinn-repo`) is the load-bearing schema at
|
|
6
|
+
* claim time: `client/src/harnesses/engine/engine.ts`
|
|
7
|
+
* `manifestBackedValidation` resolves the SolverNet contract via
|
|
8
|
+
* `getSolverNetContract` → `packages/sdk/src/contracts.ts`
|
|
9
|
+
* `JINN_REPO_V1_SOLVER_NET_CONTRACT.schemas.task.zod`, which is the SDK
|
|
10
|
+
* schema, and safeParses every claimed task spec against it. This module
|
|
11
|
+
* used to hand-mirror that schema (zod v4 vs. the SDK's zod/v3); the two
|
|
12
|
+
* copies could silently diverge in `z.preprocess` + `z.discriminatedUnion`
|
|
13
|
+
* + `z.never().optional()` behavior between zod major-version APIs. See PR
|
|
14
|
+
* #1898 review (issue #1889): collapsed to a single source of truth,
|
|
15
|
+
* following the `swe-rebench-v2` sibling pattern.
|
|
16
|
+
*
|
|
17
|
+
* A discriminated union on `source`:
|
|
18
|
+
* - `merged-pr` (retrospective): a real merged GitHub PR from the
|
|
19
|
+
* Jinn-Network/mono repo. The instance is defined by the PR that
|
|
20
|
+
* introduced the fix; the FAIL_TO_PASS gold is the PR's own test files.
|
|
21
|
+
* - `live-issue` (prospective): an open GitHub issue on Jinn-Network/mono,
|
|
22
|
+
* posted before a fix exists. No gold tests — grading is Stage 1's thin
|
|
23
|
+
* mechanical evaluator (patch applies, typecheck, policy-scoped tests),
|
|
24
|
+
* not FAIL_TO_PASS exact-match. See
|
|
25
|
+
* spec/2026-07-20-autopilot-marketplace-execution.md
|
|
26
|
+
* §"No new SolverType: a live variant of jinn-repo".
|
|
27
|
+
*
|
|
28
|
+
* `schemaVersion` stays `'jinn-repo.v1'` on both branches and the solverType
|
|
29
|
+
* string is unchanged — corpus knowledge autoload keys on solverType, so
|
|
30
|
+
* merged-PR-mined knowledge continues to autoload into live solves.
|
|
31
|
+
*
|
|
32
|
+
* Backward compatibility: a raw document with no `source` field is legacy
|
|
33
|
+
* data and is treated as `source: 'merged-pr'` (the only branch that existed
|
|
34
|
+
* before this union).
|
|
35
|
+
*
|
|
36
|
+
* Export surface is byte-compatible with the pre-collapse module: other
|
|
37
|
+
* client modules (`jinn-repo-definition.ts`, `_jinn-repo-pool.ts`, the
|
|
38
|
+
* jinn-repo evaluator harness) import from this path by name — do not
|
|
39
|
+
* rename or drop exports here without updating those call sites.
|
|
40
|
+
*/
|
|
41
|
+
export { JINN_REPO_SCHEMA_VERSION, JinnRepoTaskSchema, JinnRepoMergedPrTaskSchema, JinnRepoLiveIssueTaskSchema, isMergedPrTask, isLiveIssueTask, } from '../vendor/@jinn-network/sdk/dist/solvernets/jinn-repo.js';
|
|
42
|
+
export type { JinnRepoTask, JinnRepoMergedPrTask, JinnRepoLiveIssueTask, } from '../vendor/@jinn-network/sdk/dist/solvernets/jinn-repo.js';
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* jinn-repo SolverType task schema — thin re-export of the SDK's schema.
|
|
3
|
+
*
|
|
4
|
+
* The SDK copy (`packages/sdk/src/jinn-repo.ts`, exported via
|
|
5
|
+
* `@jinn-network/sdk/solvernets/jinn-repo`) is the load-bearing schema at
|
|
6
|
+
* claim time: `client/src/harnesses/engine/engine.ts`
|
|
7
|
+
* `manifestBackedValidation` resolves the SolverNet contract via
|
|
8
|
+
* `getSolverNetContract` → `packages/sdk/src/contracts.ts`
|
|
9
|
+
* `JINN_REPO_V1_SOLVER_NET_CONTRACT.schemas.task.zod`, which is the SDK
|
|
10
|
+
* schema, and safeParses every claimed task spec against it. This module
|
|
11
|
+
* used to hand-mirror that schema (zod v4 vs. the SDK's zod/v3); the two
|
|
12
|
+
* copies could silently diverge in `z.preprocess` + `z.discriminatedUnion`
|
|
13
|
+
* + `z.never().optional()` behavior between zod major-version APIs. See PR
|
|
14
|
+
* #1898 review (issue #1889): collapsed to a single source of truth,
|
|
15
|
+
* following the `swe-rebench-v2` sibling pattern.
|
|
16
|
+
*
|
|
17
|
+
* A discriminated union on `source`:
|
|
18
|
+
* - `merged-pr` (retrospective): a real merged GitHub PR from the
|
|
19
|
+
* Jinn-Network/mono repo. The instance is defined by the PR that
|
|
20
|
+
* introduced the fix; the FAIL_TO_PASS gold is the PR's own test files.
|
|
21
|
+
* - `live-issue` (prospective): an open GitHub issue on Jinn-Network/mono,
|
|
22
|
+
* posted before a fix exists. No gold tests — grading is Stage 1's thin
|
|
23
|
+
* mechanical evaluator (patch applies, typecheck, policy-scoped tests),
|
|
24
|
+
* not FAIL_TO_PASS exact-match. See
|
|
25
|
+
* spec/2026-07-20-autopilot-marketplace-execution.md
|
|
26
|
+
* §"No new SolverType: a live variant of jinn-repo".
|
|
27
|
+
*
|
|
28
|
+
* `schemaVersion` stays `'jinn-repo.v1'` on both branches and the solverType
|
|
29
|
+
* string is unchanged — corpus knowledge autoload keys on solverType, so
|
|
30
|
+
* merged-PR-mined knowledge continues to autoload into live solves.
|
|
31
|
+
*
|
|
32
|
+
* Backward compatibility: a raw document with no `source` field is legacy
|
|
33
|
+
* data and is treated as `source: 'merged-pr'` (the only branch that existed
|
|
34
|
+
* before this union).
|
|
35
|
+
*
|
|
36
|
+
* Export surface is byte-compatible with the pre-collapse module: other
|
|
37
|
+
* client modules (`jinn-repo-definition.ts`, `_jinn-repo-pool.ts`, the
|
|
38
|
+
* jinn-repo evaluator harness) import from this path by name — do not
|
|
39
|
+
* rename or drop exports here without updating those call sites.
|
|
40
|
+
*/
|
|
41
|
+
export { JINN_REPO_SCHEMA_VERSION, JinnRepoTaskSchema, JinnRepoMergedPrTaskSchema, JinnRepoLiveIssueTaskSchema, isMergedPrTask, isLiveIssueTask, } from '../vendor/@jinn-network/sdk/dist/solvernets/jinn-repo.js';
|
|
42
|
+
//# sourceMappingURL=jinn-repo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jinn-repo.js","sourceRoot":"","sources":["../../src/solver-types/jinn-repo.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,0BAA0B,EAC1B,2BAA2B,EAC3B,cAAc,EACd,eAAe,GAChB,MAAM,wCAAwC,CAAC"}
|