mycomesh-consumer 0.1.50 → 0.1.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +37 -13
- package/networks/v10-controlled-test.ca.crt +25 -0
- package/networks/v10-controlled-test.json +119 -0
- package/networks/v10-dynamic-20260926.ca.crt +25 -0
- package/networks/v10-dynamic-20260926.json +154 -0
- package/package.json +16 -2
- package/src/cli.mjs +2 -1
- package/src/consumer-discovery.mjs +355 -0
- package/src/consumer-history.mjs +287 -0
- package/src/consumer-request-journal.mjs +189 -0
- package/src/consumer-reserved.mjs +112 -0
- package/src/consumer-runtime.mjs +2841 -181
- package/src/consumer-sessions.mjs +205 -0
- package/src/consumer.mjs +214 -12
- package/src/release.mjs +12 -0
package/README.md
CHANGED
|
@@ -15,6 +15,19 @@ npm install --global mycomesh-consumer
|
|
|
15
15
|
mycomesh-consumer
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
+
The default remains the public V8-compatible network for existing installs.
|
|
19
|
+
The pinned V10 fixed-budget committee is a controlled testnet and must be
|
|
20
|
+
selected explicitly:
|
|
21
|
+
|
|
22
|
+
```sh
|
|
23
|
+
mycomesh-consumer --v10-controlled-test
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
This option uses the manifest and private testnet CA shipped in the package,
|
|
27
|
+
pins both test Relays, and requires the wallet to fund an active fixed budget
|
|
28
|
+
channel. It is not a production network and does not enable token rewards or
|
|
29
|
+
independent arbitration.
|
|
30
|
+
|
|
18
31
|
For a checkout:
|
|
19
32
|
|
|
20
33
|
```sh
|
|
@@ -25,23 +38,28 @@ The command starts the Consumer API on `127.0.0.1:8110`, prints and optionally
|
|
|
25
38
|
opens the local credentials page, and stays available for any
|
|
26
39
|
OpenAI-compatible client. It does not start or configure Codex.
|
|
27
40
|
|
|
28
|
-
The page
|
|
29
|
-
|
|
30
|
-
|
|
41
|
+
The page starts with a wallet signature check. The selected wallet must match
|
|
42
|
+
the local payment key's active on-chain grant before the API key/export and
|
|
43
|
+
inference are enabled. It exposes only the local API URL, payment key/export,
|
|
44
|
+
prepaid balance, key operations, and local consumption history. It has no
|
|
45
|
+
conversation or request-session UI. The payment key is generated once and stored at
|
|
31
46
|
`~/.mycomesh/consumer/payment-key` with mode `0600`; set
|
|
32
47
|
`MYCOMESH_CONSUMER_DATA_DIR` to choose another directory.
|
|
33
48
|
|
|
34
49
|
## Connect a client
|
|
35
50
|
|
|
36
|
-
The default command is already service-only.
|
|
37
|
-
shell and
|
|
51
|
+
The default command is already service-only. Sign in on the local page first,
|
|
52
|
+
then load the export block into a shell and use Codex or another compatible
|
|
53
|
+
client:
|
|
38
54
|
|
|
39
55
|
```sh
|
|
40
56
|
mycomesh-consumer --no-browser
|
|
41
|
-
eval "$(curl -sS http://127.0.0.1:8110/credentials)"
|
|
42
|
-
codex
|
|
43
57
|
```
|
|
44
58
|
|
|
59
|
+
Open the printed setup URL, sign in, and use **Copy export** on the local page.
|
|
60
|
+
Paste the export into the client terminal, then run `codex`. An unauthenticated
|
|
61
|
+
request to `/credentials` is rejected even after the wallet is unlocked.
|
|
62
|
+
|
|
45
63
|
The optional convenience wrapper is explicit:
|
|
46
64
|
|
|
47
65
|
```sh
|
|
@@ -60,10 +78,12 @@ The local API is OpenAI-compatible:
|
|
|
60
78
|
```sh
|
|
61
79
|
export OPENAI_BASE_URL=http://127.0.0.1:8110/v1
|
|
62
80
|
export OPENAI_API_KEY='myco_sk_...'
|
|
63
|
-
mycomesh responses --input 'hello' --model
|
|
81
|
+
mycomesh responses --input 'hello' --model gpt-5.5
|
|
64
82
|
```
|
|
65
83
|
|
|
66
|
-
The browser's export block is the canonical way to obtain both values
|
|
84
|
+
The browser's export block is the canonical way to obtain both values after
|
|
85
|
+
wallet verification. `--codex` waits for that verification before launching
|
|
86
|
+
Codex.
|
|
67
87
|
|
|
68
88
|
## Temporary sharing
|
|
69
89
|
|
|
@@ -77,12 +97,14 @@ Consumer invalidates the temporary key.
|
|
|
77
97
|
|
|
78
98
|
## Relay scheduling and V8 payments
|
|
79
99
|
|
|
80
|
-
The Consumer checks each configured Relay's
|
|
81
|
-
|
|
100
|
+
The Consumer checks each configured Relay's selected protocol health (V8 by
|
|
101
|
+
default, or V10 when explicitly selected) and automatically tries the next
|
|
102
|
+
Relay after a health, timeout, or retryable HTTP failure. A single
|
|
82
103
|
request ID is preserved across failover. Each attempt carries a fresh V8
|
|
83
104
|
EIP-712 payment authorization signed by the persisted key; the Relay resolves
|
|
84
|
-
the key address to its on-chain grant and settles the signed receipt.
|
|
85
|
-
signature
|
|
105
|
+
the key address to its on-chain grant and settles the signed receipt. A wallet
|
|
106
|
+
signature unlocks each Consumer process once; inference has no per-request
|
|
107
|
+
wallet signature or Consumer-managed conversation state.
|
|
86
108
|
|
|
87
109
|
Configure multiple Relay origins and an optional outbound proxy:
|
|
88
110
|
|
|
@@ -94,6 +116,8 @@ mycomesh-consumer --proxy http://127.0.0.1:10792
|
|
|
94
116
|
The default Relay is `https://bridge.mycomesh.xyz`. The V8 deployment and RPC
|
|
95
117
|
defaults are embedded in the package; `MYCOMESH_CONSUMER_NETWORK_CONFIG` and
|
|
96
118
|
`MYCOMESH_CONSUMER_SETTLEMENT_RPC_URLS` can override them for another network.
|
|
119
|
+
For the controlled V10 path, use `--v10-controlled-test` or provide an
|
|
120
|
+
equivalent manifest with `--network-config` and `--controlled-test`.
|
|
97
121
|
|
|
98
122
|
## Stateless request CLI
|
|
99
123
|
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
|
2
|
+
MIIEKTCCApGgAwIBAgIUDwYNmg71zXD2ycqGMXfAmTtb9E8wDQYJKoZIhvcNAQEL
|
|
3
|
+
BQAwKzEpMCcGA1UEAwwgTXljb01lc2ggSVAgdGVzdG5ldCBkZWRpY2F0ZWQgQ0Ew
|
|
4
|
+
HhcNMjYwOTE1MDM0NjQ3WhcNMjcwOTE1MDM1NjQ3WjArMSkwJwYDVQQDDCBNeWNv
|
|
5
|
+
TWVzaCBJUCB0ZXN0bmV0IGRlZGljYXRlZCBDQTCCAaIwDQYJKoZIhvcNAQEBBQAD
|
|
6
|
+
ggGPADCCAYoCggGBAKSXx/8p203JtQSav+7wt7xYfWURFe0DQODb3XNIc2YFe7j4
|
|
7
|
+
HDEiL47sDpBd4JY9NELjzA47vIRkRdLlfit5JKWy1+ozzlJ6G2qs9o3vFK+Xho8K
|
|
8
|
+
8D8Q6hXCUaaKPFAg6vONH0OHnCMaWmq+3gKzdgId1ci4QopjAVvaxUj/CcpFVl1E
|
|
9
|
+
JdGjVhj+SVWE/fKb5Ullbw6UIhjpAbH4BmsOHJLfPJuw94lFWHgCJgcMWF8qxeTU
|
|
10
|
+
fL4Kwp6hUAgH0BOiD4NsNTn4lIFnqwzb+Cu6vqSdd/poTOMvKj7sjl+tZdphtCB5
|
|
11
|
+
DOZr066mAKlY91goM1BUD2y8ozBiDDUmJSeGp3eUy8Iuch2A9sEupDpt0z/cvs2W
|
|
12
|
+
BXqJdbvVEMY+TFVRPkSmG2FfnWvzoHx5QD7o4dYLIrN/nD5y44NypAdpR1n1IHs0
|
|
13
|
+
8EF1Lae80FHM3Jwt3mLqnhAvwKqMfAr71gFxolbLhO/O2RWd11UuBIy/ORsXFUGB
|
|
14
|
+
d/JurXmMC9kajoeg4wIDAQABo0UwQzASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1Ud
|
|
15
|
+
DwEB/wQEAwIBBjAdBgNVHQ4EFgQUr/zADf47qEsS1yVwDgx6CvjN/5kwDQYJKoZI
|
|
16
|
+
hvcNAQELBQADggGBAHnJExIh4oxx8xkLsNVKb6hQyM6814wP6gUmLLUAZXfu6LV1
|
|
17
|
+
PoiMoeUWLd02JocyGLJnVmBgUFJHab16GUEwldYNBvnaeycrpQXP/Bu9Kl6Tr2Ku
|
|
18
|
+
Efv8veCY+tj6GWgv/HkRGrvdn6LPhVE84zvrkLthwn262FxPqeb1dt/RkgrDBPKL
|
|
19
|
+
YEN2QG8uyo10YSQm7jgyl22f/QrLB3jEO3lhVqzu0lKz6TZrv1ikvl1gtAV3rEfW
|
|
20
|
+
vszRlgkJqcFV/2cZmEN6iflq3LZNlnUWxgtLaMpCGlPRnQ9sLbPTFfqMHOyeWaCS
|
|
21
|
+
8odcemTNIJSmiyv/3HTjcmqDt9k1UGU8PwOMeKhHe/0hbgtqAxLajiz0VFDAo9MS
|
|
22
|
+
IH5wUcg3vY6LEV0TzkrQxobo2sAFArkJpoDafYRoZu0vnAfkQndQP66l9KzL33EP
|
|
23
|
+
PtV09Z9vNbjGC0NpJpop2J0J69VdDk9wHHJOQHYDPSxbL8eQKcQwtkOBCq0N1u6c
|
|
24
|
+
RQc4USIGi/decqtfJA==
|
|
25
|
+
-----END CERTIFICATE-----
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
{
|
|
2
|
+
"adjudication_threshold": 2,
|
|
3
|
+
"adjudicator_operators": {
|
|
4
|
+
"0x5115fdff8b309aa07ee5e767d9cd5d25533f2823": "mycomesh-controlled-test-operator",
|
|
5
|
+
"0xeadc238bc6c1e6b3f776de26a55fbd818047c2a3": "mycomesh-controlled-test-operator",
|
|
6
|
+
"0xf2f59bad1187a6a5dceec6c1ca8626d2c59bd6bc": "mycomesh-controlled-test-operator"
|
|
7
|
+
},
|
|
8
|
+
"adjudicators": [
|
|
9
|
+
"0xeadc238bc6c1e6b3f776de26a55fbd818047c2a3",
|
|
10
|
+
"0x5115fdff8b309aa07ee5e767d9cd5d25533f2823",
|
|
11
|
+
"0xf2f59bad1187a6a5dceec6c1ca8626d2c59bd6bc"
|
|
12
|
+
],
|
|
13
|
+
"authorization_deadline_seconds": 9000,
|
|
14
|
+
"backend_policy": "codex-app-server-postvalidated-v1",
|
|
15
|
+
"bridge_urls": [
|
|
16
|
+
"https://136.0.3.126:10443",
|
|
17
|
+
"https://166.88.96.60:10443"
|
|
18
|
+
],
|
|
19
|
+
"capacity_channel_ids": [
|
|
20
|
+
"0x9fd37b06f33945e0a68fbb7cd82ef4599044c916e9e992d11a4832fe7bd45dfa",
|
|
21
|
+
"0xe724aa1a205789aedd3c43ac79a8bd73e7874eaa7439f26dc60fb88887bad674",
|
|
22
|
+
"0x6e3ab14cb5240e6f59dfa51dc1f3939c10b47c2402acd60979299527e052c9f2"
|
|
23
|
+
],
|
|
24
|
+
"capacity_open_tx_hash": "0x1f08405cb9ff9fc5a19074ceace64650f8c5df11fcfa6e5fd243d7bbdc703514",
|
|
25
|
+
"chain_domain": "10",
|
|
26
|
+
"chain_id": 11155111,
|
|
27
|
+
"channel": "codex-standard-v1",
|
|
28
|
+
"channel_hash": "0xdedf8b58276b80863f354409c963cbaddf4ca7d5b866d528ff1386d74b339104",
|
|
29
|
+
"channel_id": "codex",
|
|
30
|
+
"committee_mode": "controlled_test",
|
|
31
|
+
"consumer_public_keys": [],
|
|
32
|
+
"deployer": "0xae4a4c86c2b6c340c8198d0958b223f5d0c8caa2",
|
|
33
|
+
"deployment_block": 11739709,
|
|
34
|
+
"eip712_name": "MycoMesh Settlement",
|
|
35
|
+
"eip712_version": "10",
|
|
36
|
+
"governance": "0xae4a4c86c2b6c340c8198d0958b223f5d0c8caa2",
|
|
37
|
+
"independence_attested": false,
|
|
38
|
+
"max_authorization_ttl_seconds": 10800,
|
|
39
|
+
"max_channel_duration_seconds": 604800,
|
|
40
|
+
"network_id": "mycomesh-v10-fixed-budget-controlled-test",
|
|
41
|
+
"network_profile": "testnet",
|
|
42
|
+
"policy": {
|
|
43
|
+
"arbitration_timeout": 600,
|
|
44
|
+
"bond_penalty_recipient": "0xae4a4c86c2b6c340c8198d0958b223f5d0c8caa2",
|
|
45
|
+
"consumer_withdrawal_delay": 300,
|
|
46
|
+
"dispute_window": 300,
|
|
47
|
+
"reporter_bond": 10000,
|
|
48
|
+
"reporter_bounty_bps": 2000,
|
|
49
|
+
"slash_bps": 10000,
|
|
50
|
+
"slash_cap": 100000,
|
|
51
|
+
"stable_bounty_cap": 20000,
|
|
52
|
+
"token_minimum_exposure": 0,
|
|
53
|
+
"token_minimum_penalty": 0,
|
|
54
|
+
"token_reward": 0,
|
|
55
|
+
"token_reward_cap": 0
|
|
56
|
+
},
|
|
57
|
+
"pricing_hash": "0x6b4460729d50e89425af70b497056cc43eba201ea9077438fca58b284fa69684",
|
|
58
|
+
"pricing_version": 1,
|
|
59
|
+
"protocol_version": 10,
|
|
60
|
+
"provider_transport": "relay",
|
|
61
|
+
"public_model_id": "gpt-5.5",
|
|
62
|
+
"public_model_ids": [
|
|
63
|
+
"gpt-5.5",
|
|
64
|
+
"gpt-5.6-sol"
|
|
65
|
+
],
|
|
66
|
+
"relay": {
|
|
67
|
+
"attestation_address": "0x44d183a73b1a87801bc18b060a2ce0a7f3aecaaf",
|
|
68
|
+
"host": "136.0.3.126",
|
|
69
|
+
"payment_address": "0x94515c8903cca8e5aedb1437e947db39970792cc",
|
|
70
|
+
"provider_port": 10991,
|
|
71
|
+
"provider_tls": true,
|
|
72
|
+
"public_url": "https://136.0.3.126:10443"
|
|
73
|
+
},
|
|
74
|
+
"relay_fallbacks": [
|
|
75
|
+
{
|
|
76
|
+
"attestation_address": "0x420b2033a61491c268c2600c95d1b64ad9b962ca",
|
|
77
|
+
"host": "166.88.96.60",
|
|
78
|
+
"payment_address": "0x94515c8903cca8e5aedb1437e947db39970792cc",
|
|
79
|
+
"provider_port": 10991,
|
|
80
|
+
"provider_tls": true,
|
|
81
|
+
"public_url": "https://166.88.96.60:10443"
|
|
82
|
+
}
|
|
83
|
+
],
|
|
84
|
+
"require_response_proof": true,
|
|
85
|
+
"reservation_mode": "provider_bound_channel",
|
|
86
|
+
"reserve_input_bytes": 65536,
|
|
87
|
+
"reserve_output_tokens": 2000,
|
|
88
|
+
"reward_token": "0x0000000000000000000000000000000000000000",
|
|
89
|
+
"schema_version": 1,
|
|
90
|
+
"settlement": "0x76d9b48c83ffaf0772f7e43f468121cf07e825e5",
|
|
91
|
+
"settlement_rpc_url": "https://ethereum-sepolia-rpc.publicnode.com",
|
|
92
|
+
"settlement_rpc_urls": [
|
|
93
|
+
"https://ethereum-sepolia-rpc.publicnode.com",
|
|
94
|
+
"https://sepolia.gateway.tenderly.co"
|
|
95
|
+
],
|
|
96
|
+
"stablecoin": "0xeb487c6e778248e16361dc313e4223c20d4c23b5",
|
|
97
|
+
"stablecoin_runtime_code_keccak256": "0xec84672482c0750af490ff908151acbdfdffd04f9fee82f86efafa5ede6c30b4",
|
|
98
|
+
"stablecoin_runtime_code_sha256": "749dd96b18353ab7bbad50de0bb854f3cb427e37953ad0c444fc55d3ed200dd1",
|
|
99
|
+
"tls_ca_file": "v10-controlled-test.ca.crt",
|
|
100
|
+
"treasury": "0xae4a4c86c2b6c340c8198d0958b223f5d0c8caa2",
|
|
101
|
+
"tx_hash": "0x41afee0c470a00097c169bfff8efa42de8fde8b76e41eb226eebd6f962d55201",
|
|
102
|
+
"fresh_channel_open_tx_hash": "0x1f08405cb9ff9fc5a19074ceace64650f8c5df11fcfa6e5fd243d7bbdc703514",
|
|
103
|
+
"fresh_channel_open_tx_hashes": [
|
|
104
|
+
"0x1f08405cb9ff9fc5a19074ceace64650f8c5df11fcfa6e5fd243d7bbdc703514",
|
|
105
|
+
"0x89e903edc3b5773cd94fd9171b5c2b8e2fe71f7ea22eacc04eeed62c26c84162",
|
|
106
|
+
"0x0a23ea37ab1b5a409687c79a8ab073bad6e599b07f2012f1bdcb174151b9d5cf"
|
|
107
|
+
],
|
|
108
|
+
"fresh_channel_open_block_timestamps": [
|
|
109
|
+
1789916244,
|
|
110
|
+
1789916472,
|
|
111
|
+
1789916664
|
|
112
|
+
],
|
|
113
|
+
"fresh_channel_valid_from": 1789917396,
|
|
114
|
+
"fresh_channel_admit_until": 1789938996,
|
|
115
|
+
"fresh_channel_claim_until": 1789949796,
|
|
116
|
+
"fresh_channel_capacity": 1000000,
|
|
117
|
+
"fresh_channel_max_fee_per_request": 100000,
|
|
118
|
+
"fresh_channel_plan": "fresh-channel-plan-20260920f.json"
|
|
119
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
|
2
|
+
MIIEKTCCApGgAwIBAgIUDwYNmg71zXD2ycqGMXfAmTtb9E8wDQYJKoZIhvcNAQEL
|
|
3
|
+
BQAwKzEpMCcGA1UEAwwgTXljb01lc2ggSVAgdGVzdG5ldCBkZWRpY2F0ZWQgQ0Ew
|
|
4
|
+
HhcNMjYwOTE1MDM0NjQ3WhcNMjcwOTE1MDM1NjQ3WjArMSkwJwYDVQQDDCBNeWNv
|
|
5
|
+
TWVzaCBJUCB0ZXN0bmV0IGRlZGljYXRlZCBDQTCCAaIwDQYJKoZIhvcNAQEBBQAD
|
|
6
|
+
ggGPADCCAYoCggGBAKSXx/8p203JtQSav+7wt7xYfWURFe0DQODb3XNIc2YFe7j4
|
|
7
|
+
HDEiL47sDpBd4JY9NELjzA47vIRkRdLlfit5JKWy1+ozzlJ6G2qs9o3vFK+Xho8K
|
|
8
|
+
8D8Q6hXCUaaKPFAg6vONH0OHnCMaWmq+3gKzdgId1ci4QopjAVvaxUj/CcpFVl1E
|
|
9
|
+
JdGjVhj+SVWE/fKb5Ullbw6UIhjpAbH4BmsOHJLfPJuw94lFWHgCJgcMWF8qxeTU
|
|
10
|
+
fL4Kwp6hUAgH0BOiD4NsNTn4lIFnqwzb+Cu6vqSdd/poTOMvKj7sjl+tZdphtCB5
|
|
11
|
+
DOZr066mAKlY91goM1BUD2y8ozBiDDUmJSeGp3eUy8Iuch2A9sEupDpt0z/cvs2W
|
|
12
|
+
BXqJdbvVEMY+TFVRPkSmG2FfnWvzoHx5QD7o4dYLIrN/nD5y44NypAdpR1n1IHs0
|
|
13
|
+
8EF1Lae80FHM3Jwt3mLqnhAvwKqMfAr71gFxolbLhO/O2RWd11UuBIy/ORsXFUGB
|
|
14
|
+
d/JurXmMC9kajoeg4wIDAQABo0UwQzASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1Ud
|
|
15
|
+
DwEB/wQEAwIBBjAdBgNVHQ4EFgQUr/zADf47qEsS1yVwDgx6CvjN/5kwDQYJKoZI
|
|
16
|
+
hvcNAQELBQADggGBAHnJExIh4oxx8xkLsNVKb6hQyM6814wP6gUmLLUAZXfu6LV1
|
|
17
|
+
PoiMoeUWLd02JocyGLJnVmBgUFJHab16GUEwldYNBvnaeycrpQXP/Bu9Kl6Tr2Ku
|
|
18
|
+
Efv8veCY+tj6GWgv/HkRGrvdn6LPhVE84zvrkLthwn262FxPqeb1dt/RkgrDBPKL
|
|
19
|
+
YEN2QG8uyo10YSQm7jgyl22f/QrLB3jEO3lhVqzu0lKz6TZrv1ikvl1gtAV3rEfW
|
|
20
|
+
vszRlgkJqcFV/2cZmEN6iflq3LZNlnUWxgtLaMpCGlPRnQ9sLbPTFfqMHOyeWaCS
|
|
21
|
+
8odcemTNIJSmiyv/3HTjcmqDt9k1UGU8PwOMeKhHe/0hbgtqAxLajiz0VFDAo9MS
|
|
22
|
+
IH5wUcg3vY6LEV0TzkrQxobo2sAFArkJpoDafYRoZu0vnAfkQndQP66l9KzL33EP
|
|
23
|
+
PtV09Z9vNbjGC0NpJpop2J0J69VdDk9wHHJOQHYDPSxbL8eQKcQwtkOBCq0N1u6c
|
|
24
|
+
RQc4USIGi/decqtfJA==
|
|
25
|
+
-----END CERTIFICATE-----
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
{
|
|
2
|
+
"adjudication_threshold": 2,
|
|
3
|
+
"authorization_deadline_seconds": 9000,
|
|
4
|
+
"backend_policy": "codex-app-server-postvalidated-v1",
|
|
5
|
+
"bind_tx_hash": "0x31d80c9d55e6554dd309ce9effe3b559aeb7691ac52feba07087ccafa64f88c8",
|
|
6
|
+
"bridge_urls": [
|
|
7
|
+
"https://166.88.209.61:10443",
|
|
8
|
+
"https://216.173.64.214:10443"
|
|
9
|
+
],
|
|
10
|
+
"capacity_channel_ids": [
|
|
11
|
+
"0xa8d7fa50d049040d84a76d2b7bc0739c70ce95c84d26be85fda51ca52d1f06dc",
|
|
12
|
+
"0xe66fafa17f1862aa17bfb6fc8456e12915bc6fd9f41553d122cdc4e7a280fb0b",
|
|
13
|
+
"0xe7464141820386aa00b666c9926208cb117b746c7a9a2cbd665c8b79d6240b9f"
|
|
14
|
+
],
|
|
15
|
+
"chain_domain": "10",
|
|
16
|
+
"chain_id": 11155111,
|
|
17
|
+
"channel": "codex-standard-v1",
|
|
18
|
+
"channel_hash": "0xdedf8b58276b80863f354409c963cbaddf4ca7d5b866d528ff1386d74b339104",
|
|
19
|
+
"channel_id": "codex",
|
|
20
|
+
"committee_mode": "dynamic_provider_ai_v1",
|
|
21
|
+
"confirmations": 6,
|
|
22
|
+
"deployer": "0x8d13f6c18ae30f223d985f39050cc8d9b00f90e1",
|
|
23
|
+
"deployment_block": 11782915,
|
|
24
|
+
"deployment_block_hash": "0x9f0f7bab3452b11c0c06eb2fbfb414a73150a2106fee8a5221599a5ba80fa974",
|
|
25
|
+
"deployment_class": "controlled_test",
|
|
26
|
+
"eip712_name": "MycoMesh Settlement",
|
|
27
|
+
"eip712_version": "10",
|
|
28
|
+
"fresh_channel_admit_until": 1791725064,
|
|
29
|
+
"fresh_channel_capacity": 1000000,
|
|
30
|
+
"fresh_channel_claim_until": 1791735864,
|
|
31
|
+
"fresh_channel_max_fee_per_request": 100000,
|
|
32
|
+
"fresh_channel_open_block_timestamps": [
|
|
33
|
+
1790515212,
|
|
34
|
+
1790515212,
|
|
35
|
+
1790515212
|
|
36
|
+
],
|
|
37
|
+
"fresh_channel_open_tx_hashes": [
|
|
38
|
+
"0xcffdfa73276de1236b3828b399585f195efef444fea58bedc8a18957629dfe02",
|
|
39
|
+
"0xcffdfa73276de1236b3828b399585f195efef444fea58bedc8a18957629dfe02",
|
|
40
|
+
"0xcffdfa73276de1236b3828b399585f195efef444fea58bedc8a18957629dfe02"
|
|
41
|
+
],
|
|
42
|
+
"fresh_channel_valid_from": 1790515464,
|
|
43
|
+
"genesis_hash": "0x25a5cc106eea7138acab33231d7160d69cb777ee0c2c553fcddf5138993e6dd9",
|
|
44
|
+
"governance": "0x8d13f6c18ae30f223d985f39050cc8d9b00f90e1",
|
|
45
|
+
"jury_decision_policy_hash": "0xd608c2aed84f2eeb83a56ad73ba01785124149951561bc7d2c840d31760f79cd",
|
|
46
|
+
"jury_pool_mode": "live_registry_reputation_snapshot",
|
|
47
|
+
"jury_provider_count_source": "ProviderJuryRegistryV1",
|
|
48
|
+
"jury_randomness": "future_blockhash_v1",
|
|
49
|
+
"jury_registry": "0x1f4b01f9138cbf25e646cbc2498f77a12729bae7",
|
|
50
|
+
"jury_registry_deployment_block": 11782892,
|
|
51
|
+
"jury_registry_deployment_block_hash": "0x5bcc90ff7aac086f912fdb2ddbb0cbd09314c0d15542462b51792cfb6d4f77b6",
|
|
52
|
+
"jury_registry_deployment_tx_hash": "0x574617c3746afce72aa2c00784400221ffafc839e5daab26eb2ae43c593f928b",
|
|
53
|
+
"jury_registry_governance": "0x8d13f6c18ae30f223d985f39050cc8d9b00f90e1",
|
|
54
|
+
"jury_registry_runtime_code_keccak256": "0xa08926221f2b2252ed09a63e095a233b9fd11dabf529ecc846fd7afb67ea44f3",
|
|
55
|
+
"jury_relay_public_keys": [
|
|
56
|
+
"32ae49e6e49e303b268ea5236ab5650c4780c2f63514999f082e60dec1c78af7",
|
|
57
|
+
"ec4245fbdf4ca146878df705317ff7d48eea6a37a036357041631c1341268bd2"
|
|
58
|
+
],
|
|
59
|
+
"jury_roster_is_unpinned": true,
|
|
60
|
+
"jury_selection_delay_blocks": 4,
|
|
61
|
+
"jury_size": 3,
|
|
62
|
+
"jury_transaction_max_total_gas_cost_wei": 25000000000000000,
|
|
63
|
+
"jury_transaction_sender_role": "self-controlled-bridge-or-relay-executor",
|
|
64
|
+
"jury_transaction_senders": {
|
|
65
|
+
"32ae49e6e49e303b268ea5236ab5650c4780c2f63514999f082e60dec1c78af7": "0x44aeca97a8b5f8bfe5f79805045e71b2a2e8654b",
|
|
66
|
+
"ec4245fbdf4ca146878df705317ff7d48eea6a37a036357041631c1341268bd2": "0x69c224f4bcf8fa60ae98b2df0d2c55e2f758e30f"
|
|
67
|
+
},
|
|
68
|
+
"max_authorization_ttl_seconds": 10800,
|
|
69
|
+
"max_channel_duration_seconds": 2592000,
|
|
70
|
+
"minimum_provider_reputation": 75,
|
|
71
|
+
"network_id": "mycomesh-v10-dynamic-provider-ai-20260926-controlled-test",
|
|
72
|
+
"network_profile": "testnet",
|
|
73
|
+
"policy": {
|
|
74
|
+
"arbitration_timeout": 1800,
|
|
75
|
+
"bond_penalty_recipient": "0xa04e6ce35bea88aef85e07a9fc58af1121f80192",
|
|
76
|
+
"consumer_withdrawal_delay": 600,
|
|
77
|
+
"dispute_window": 1800,
|
|
78
|
+
"reporter_bond": 10000,
|
|
79
|
+
"reporter_bounty_bps": 2000,
|
|
80
|
+
"slash_bps": 10000,
|
|
81
|
+
"slash_cap": 100000,
|
|
82
|
+
"stable_bounty_cap": 20000,
|
|
83
|
+
"token_minimum_exposure": 0,
|
|
84
|
+
"token_minimum_penalty": 0,
|
|
85
|
+
"token_reward": 0,
|
|
86
|
+
"token_reward_cap": 0
|
|
87
|
+
},
|
|
88
|
+
"pricing_hash": "0xd530a940753c6bfce678d0376d01b920c4cae795962c18c870e834e043f2c638",
|
|
89
|
+
"pricing_version": 1,
|
|
90
|
+
"protocol_version": 10,
|
|
91
|
+
"provider_transport": "relay",
|
|
92
|
+
"public_model_id": "gpt-5.5",
|
|
93
|
+
"public_model_ids": [
|
|
94
|
+
"gpt-5.5",
|
|
95
|
+
"gpt-5.6-sol"
|
|
96
|
+
],
|
|
97
|
+
"relay": {
|
|
98
|
+
"attestation_address": "0x684114a7d8cbb51fad3de5b0597c2938c25ce8f4",
|
|
99
|
+
"host": "136.0.3.126",
|
|
100
|
+
"payment_address": "0x80a9337a3c37eeffad65031e6c2a89c820b14fe3",
|
|
101
|
+
"provider_port": 10991,
|
|
102
|
+
"provider_tls": true,
|
|
103
|
+
"public_url": "https://136.0.3.126:10443"
|
|
104
|
+
},
|
|
105
|
+
"relay_fallbacks": [
|
|
106
|
+
{
|
|
107
|
+
"attestation_address": "0x684114a7d8cbb51fad3de5b0597c2938c25ce8f4",
|
|
108
|
+
"host": "166.88.96.60",
|
|
109
|
+
"payment_address": "0x80a9337a3c37eeffad65031e6c2a89c820b14fe3",
|
|
110
|
+
"provider_port": 10991,
|
|
111
|
+
"provider_tls": true,
|
|
112
|
+
"public_url": "https://166.88.96.60:10443"
|
|
113
|
+
}
|
|
114
|
+
],
|
|
115
|
+
"reputation_authority": "0xc3568672d201c97b6ed08bf0339e0e53638969fd",
|
|
116
|
+
"reputation_history_import": {
|
|
117
|
+
"artifact_root": "0x162ca0bc55194cf23035df8ee88dfcc07591a57ccc7a59724fe51ca996006a3f",
|
|
118
|
+
"artifact_sha256": "737f8c8f1f2eb35340b8e7ee5ff98b64842a13689ede778f943ffc0ed07bc3b9",
|
|
119
|
+
"confirmations": 6,
|
|
120
|
+
"schema": "mycomesh.v10.reputation-history-import.v1",
|
|
121
|
+
"source_chain_id": 11155111,
|
|
122
|
+
"source_deployment_block": 11765832,
|
|
123
|
+
"source_deployment_block_hash": "0x9f46971146002debe730de414a0916d784e6cb70b9641c277cc9826080975c33",
|
|
124
|
+
"source_genesis_hash": "0x25a5cc106eea7138acab33231d7160d69cb777ee0c2c553fcddf5138993e6dd9",
|
|
125
|
+
"source_history_through_block": 11783241,
|
|
126
|
+
"source_history_through_block_hash": "0x2200911369ca3d619e16ec3336fda7c07598a225c27c01c3267ff270d84e5831",
|
|
127
|
+
"source_network_id": "mycomesh-v10-dynamic-provider-ai-controlled-test",
|
|
128
|
+
"source_protocol_version": 10,
|
|
129
|
+
"source_runtime_code_hash": "0x0316452e08e61fb19eb45b6ae2f16496ca2386581f4d46d983c6d0e283dbfeba",
|
|
130
|
+
"source_settlement_contract": "0xbb97e17156f390e4529d30d334ef56f22ec36fce"
|
|
131
|
+
},
|
|
132
|
+
"require_response_proof": true,
|
|
133
|
+
"reservation_mode": "provider_bound_channel",
|
|
134
|
+
"reserve_input_bytes": 65536,
|
|
135
|
+
"reserve_output_tokens": 2000,
|
|
136
|
+
"reward_token": "0x0000000000000000000000000000000000000000",
|
|
137
|
+
"schema_version": 1,
|
|
138
|
+
"settlement": "0x31d3f0a17c6c6f4594a2f9ffeebf72c41f9e1c3a",
|
|
139
|
+
"tx_hash": "0xb6175d01aeb82001f77560dfe5ecc63a6b90c415a2e5b1f5f90754b11bab9bd6",
|
|
140
|
+
"settlement_deployment_tx_hash": "0xb6175d01aeb82001f77560dfe5ecc63a6b90c415a2e5b1f5f90754b11bab9bd6",
|
|
141
|
+
"settlement_rpc_url": "https://rpc.sepolia.ethpandaops.io",
|
|
142
|
+
"settlement_rpc_urls": [
|
|
143
|
+
"https://rpc.sepolia.ethpandaops.io",
|
|
144
|
+
"https://sepolia.gateway.tenderly.co",
|
|
145
|
+
"https://ethereum-sepolia-rpc.publicnode.com"
|
|
146
|
+
],
|
|
147
|
+
"settlement_runtime_code_keccak256": "0xd649132e8a693486efac90093201250ae55d65c8f84eb3e99524a92191e51165",
|
|
148
|
+
"source_commit": "f311cba91035be9705daf10eca44bea9590de6c8",
|
|
149
|
+
"stablecoin": "0xeb487c6e778248e16361dc313e4223c20d4c23b5",
|
|
150
|
+
"stablecoin_runtime_code_keccak256": "0xec84672482c0750af490ff908151acbdfdffd04f9fee82f86efafa5ede6c30b4",
|
|
151
|
+
"stablecoin_runtime_code_sha256": "749dd96b18353ab7bbad50de0bb854f3cb427e37953ad0c444fc55d3ed200dd1",
|
|
152
|
+
"tls_ca_file": "v10-dynamic-20260926.ca.crt",
|
|
153
|
+
"treasury": "0x8d13f6c18ae30f223d985f39050cc8d9b00f90e1"
|
|
154
|
+
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mycomesh-consumer",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.52",
|
|
4
4
|
"description": "Native Node.js MycoMesh Consumer and OpenAI-compatible request CLI.",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "https://github.com/Charleslzp/mycomesh"
|
|
8
|
+
},
|
|
5
9
|
"publishConfig": {
|
|
6
10
|
"access": "public"
|
|
7
11
|
},
|
|
@@ -16,7 +20,17 @@
|
|
|
16
20
|
"src/cli.mjs",
|
|
17
21
|
"src/consumer.mjs",
|
|
18
22
|
"src/consumer-runtime.mjs",
|
|
19
|
-
"
|
|
23
|
+
"src/consumer-reserved.mjs",
|
|
24
|
+
"src/consumer-request-journal.mjs",
|
|
25
|
+
"src/consumer-discovery.mjs",
|
|
26
|
+
"src/release.mjs",
|
|
27
|
+
"src/consumer-sessions.mjs",
|
|
28
|
+
"src/consumer-history.mjs",
|
|
29
|
+
"README.md",
|
|
30
|
+
"networks/v10-controlled-test.json",
|
|
31
|
+
"networks/v10-controlled-test.ca.crt",
|
|
32
|
+
"networks/v10-dynamic-20260926.json",
|
|
33
|
+
"networks/v10-dynamic-20260926.ca.crt"
|
|
20
34
|
],
|
|
21
35
|
"engines": {
|
|
22
36
|
"node": ">=20"
|
package/src/cli.mjs
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { once } from "node:events";
|
|
2
2
|
import { readFile } from "node:fs/promises";
|
|
3
|
+
import { CONSUMER_RELEASE_VERSION } from "./release.mjs";
|
|
3
4
|
|
|
4
|
-
const CLI_VERSION =
|
|
5
|
+
const CLI_VERSION = CONSUMER_RELEASE_VERSION;
|
|
5
6
|
// The npm client is local-first. A public Gateway is an explicit override;
|
|
6
7
|
// the default remains the loopback Consumer edge so a blocked domain cannot
|
|
7
8
|
// strand the Codex client.
|