prediction-market-agent-tooling 0.43.0__py3-none-any.whl → 0.43.2__py3-none-any.whl
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.
- prediction_market_agent_tooling/deploy/agent.py +10 -2
- prediction_market_agent_tooling/deploy/agent_example.py +4 -1
- prediction_market_agent_tooling/markets/omen/omen_resolving.py +2 -1
- prediction_market_agent_tooling/markets/polymarket/data_models_web.py +83 -83
- prediction_market_agent_tooling/tools/is_predictable.py +4 -2
- prediction_market_agent_tooling/tools/parallelism.py +2 -0
- {prediction_market_agent_tooling-0.43.0.dist-info → prediction_market_agent_tooling-0.43.2.dist-info}/METADATA +1 -1
- {prediction_market_agent_tooling-0.43.0.dist-info → prediction_market_agent_tooling-0.43.2.dist-info}/RECORD +11 -11
- {prediction_market_agent_tooling-0.43.0.dist-info → prediction_market_agent_tooling-0.43.2.dist-info}/LICENSE +0 -0
- {prediction_market_agent_tooling-0.43.0.dist-info → prediction_market_agent_tooling-0.43.2.dist-info}/WHEEL +0 -0
- {prediction_market_agent_tooling-0.43.0.dist-info → prediction_market_agent_tooling-0.43.2.dist-info}/entry_points.txt +0 -0
@@ -209,7 +209,9 @@ class DeployableTraderAgent(DeployableAgent):
|
|
209
209
|
def have_bet_on_market_since(self, market: AgentMarket, since: timedelta) -> bool:
|
210
210
|
return have_bet_on_market_since(keys=APIKeys(), market=market, since=since)
|
211
211
|
|
212
|
-
def pick_markets(
|
212
|
+
def pick_markets(
|
213
|
+
self, market_type: MarketType, markets: t.Sequence[AgentMarket]
|
214
|
+
) -> t.Sequence[AgentMarket]:
|
213
215
|
"""
|
214
216
|
Subclasses can implement their own logic instead of this one, or on top of this one.
|
215
217
|
By default, it picks only the first {n_markets_per_run} markets where user didn't bet recently and it's a reasonable question.
|
@@ -227,6 +229,12 @@ class DeployableTraderAgent(DeployableAgent):
|
|
227
229
|
if not is_predictable_binary(market.question):
|
228
230
|
continue
|
229
231
|
|
232
|
+
# Manifold allows to bet only on markets with probability between 1 and 99.
|
233
|
+
if market_type == MarketType.MANIFOLD and not (
|
234
|
+
1 < market.current_p_yes < 99
|
235
|
+
):
|
236
|
+
continue
|
237
|
+
|
230
238
|
picked.append(market)
|
231
239
|
|
232
240
|
return picked
|
@@ -275,7 +283,7 @@ class DeployableTraderAgent(DeployableAgent):
|
|
275
283
|
Processes bets placed by agents on a given market.
|
276
284
|
"""
|
277
285
|
available_markets = self.get_markets(market_type)
|
278
|
-
markets = self.pick_markets(available_markets)
|
286
|
+
markets = self.pick_markets(market_type, available_markets)
|
279
287
|
for market in markets:
|
280
288
|
result = self.answer_binary_market(market)
|
281
289
|
if result is None:
|
@@ -7,10 +7,13 @@ from prediction_market_agent_tooling.deploy.agent import (
|
|
7
7
|
Probability,
|
8
8
|
)
|
9
9
|
from prediction_market_agent_tooling.markets.agent_market import AgentMarket
|
10
|
+
from prediction_market_agent_tooling.markets.markets import MarketType
|
10
11
|
|
11
12
|
|
12
13
|
class DeployableCoinFlipAgent(DeployableTraderAgent):
|
13
|
-
def pick_markets(
|
14
|
+
def pick_markets(
|
15
|
+
self, market_type: MarketType, markets: t.Sequence[AgentMarket]
|
16
|
+
) -> t.Sequence[AgentMarket]:
|
14
17
|
return random.sample(markets, 1)
|
15
18
|
|
16
19
|
def answer_binary_market(self, market: AgentMarket) -> Answer | None:
|
@@ -236,9 +236,10 @@ def find_resolution_on_other_markets(market: OmenMarket) -> Resolution | None:
|
|
236
236
|
resolution = find_resolution_on_polymarket(market.question_title)
|
237
237
|
|
238
238
|
case _:
|
239
|
-
|
239
|
+
logger.warning(
|
240
240
|
f"Unknown market type {market_type} in replication resolving."
|
241
241
|
)
|
242
|
+
continue
|
242
243
|
|
243
244
|
if resolution is not None:
|
244
245
|
return resolution
|
@@ -34,7 +34,7 @@ class Event(BaseModel):
|
|
34
34
|
slug: str
|
35
35
|
ticker: str
|
36
36
|
title: str
|
37
|
-
series:
|
37
|
+
series: t.Any | None = None
|
38
38
|
|
39
39
|
|
40
40
|
class Event1(BaseModel):
|
@@ -46,7 +46,7 @@ class Market1(BaseModel):
|
|
46
46
|
slug: str
|
47
47
|
question: str
|
48
48
|
image: str
|
49
|
-
volume: USDC | None
|
49
|
+
volume: USDC | None = None
|
50
50
|
outcomes: list[str]
|
51
51
|
outcomePrices: list[USDC]
|
52
52
|
active: bool
|
@@ -54,7 +54,7 @@ class Market1(BaseModel):
|
|
54
54
|
closed: bool
|
55
55
|
orderPriceMinTickSize: USDC
|
56
56
|
clobTokenIds: str
|
57
|
-
events: list[Event1]
|
57
|
+
events: list[Event1] | None = None
|
58
58
|
|
59
59
|
|
60
60
|
class ResolutionData(BaseModel):
|
@@ -77,98 +77,98 @@ class Market(BaseModel):
|
|
77
77
|
question: str
|
78
78
|
conditionId: str
|
79
79
|
slug: str
|
80
|
-
twitterCardImage: t.Any | None
|
80
|
+
twitterCardImage: t.Any | None = None
|
81
81
|
resolutionSource: str
|
82
82
|
endDate: datetime
|
83
|
-
category: t.Any | None
|
84
|
-
ammType: t.Any | None
|
83
|
+
category: t.Any | None = None
|
84
|
+
ammType: t.Any | None = None
|
85
85
|
description: str
|
86
|
-
liquidity: str | None
|
86
|
+
liquidity: str | None = None
|
87
87
|
startDate: datetime
|
88
88
|
createdAt: datetime
|
89
|
-
xAxisValue: t.Any | None
|
90
|
-
yAxisValue: t.Any | None
|
91
|
-
denominationToken: t.Any | None
|
92
|
-
fee: str | None
|
93
|
-
lowerBound: t.Any | None
|
94
|
-
upperBound: t.Any | None
|
89
|
+
xAxisValue: t.Any | None = None
|
90
|
+
yAxisValue: t.Any | None = None
|
91
|
+
denominationToken: t.Any | None = None
|
92
|
+
fee: str | None = None
|
93
|
+
lowerBound: t.Any | None = None
|
94
|
+
upperBound: t.Any | None = None
|
95
95
|
outcomes: list[str]
|
96
96
|
image: str
|
97
97
|
icon: str
|
98
|
-
imageOptimized: t.Any | None
|
99
|
-
iconOptimized: t.Any | None
|
98
|
+
imageOptimized: t.Any | None = None
|
99
|
+
iconOptimized: t.Any | None = None
|
100
100
|
outcomePrices: list[USDC]
|
101
|
-
volume: USDC | None
|
101
|
+
volume: USDC | None = None
|
102
102
|
active: bool
|
103
|
-
marketType: str | None
|
104
|
-
formatType: t.Any | None
|
105
|
-
lowerBoundDate: t.Any | None
|
106
|
-
upperBoundDate: t.Any | None
|
103
|
+
marketType: str | None = None
|
104
|
+
formatType: t.Any | None = None
|
105
|
+
lowerBoundDate: t.Any | None = None
|
106
|
+
upperBoundDate: t.Any | None = None
|
107
107
|
closed: bool
|
108
108
|
marketMakerAddress: HexAddress
|
109
|
-
closedTime: datetime | None
|
110
|
-
wideFormat: bool | None
|
109
|
+
closedTime: datetime | None = None
|
110
|
+
wideFormat: bool | None = None
|
111
111
|
new: bool
|
112
|
-
sentDiscord: t.Any | None
|
113
|
-
mailchimpTag: t.Any | None
|
112
|
+
sentDiscord: t.Any | None = None
|
113
|
+
mailchimpTag: t.Any | None = None
|
114
114
|
featured: bool
|
115
115
|
submitted_by: str
|
116
|
-
subcategory: t.Any | None
|
117
|
-
categoryMailchimpTag: t.Any | None
|
116
|
+
subcategory: t.Any | None = None
|
117
|
+
categoryMailchimpTag: t.Any | None = None
|
118
118
|
archived: bool
|
119
119
|
resolvedBy: str
|
120
120
|
restricted: bool
|
121
121
|
groupItemTitle: str
|
122
122
|
groupItemThreshold: str
|
123
123
|
questionID: str
|
124
|
-
umaEndDate: t.Any | None
|
124
|
+
umaEndDate: t.Any | None = None
|
125
125
|
enableOrderBook: bool
|
126
126
|
orderPriceMinTickSize: float
|
127
127
|
orderMinSize: int
|
128
|
-
umaResolutionStatus: t.Any | None
|
129
|
-
curationOrder: t.Any | None
|
130
|
-
volumeNum: USDC | None
|
131
|
-
liquidityNum: float | None
|
132
|
-
endDateIso: datetime | None
|
133
|
-
startDateIso: datetime | None
|
134
|
-
umaEndDateIso: datetime | None
|
135
|
-
commentsEnabled: bool | None
|
136
|
-
disqusThread: t.Any | None
|
137
|
-
gameStartTime: datetime | None
|
138
|
-
secondsDelay: int | None
|
128
|
+
umaResolutionStatus: t.Any | None = None
|
129
|
+
curationOrder: t.Any | None = None
|
130
|
+
volumeNum: USDC | None = None
|
131
|
+
liquidityNum: float | None = None
|
132
|
+
endDateIso: datetime | None = None
|
133
|
+
startDateIso: datetime | None = None
|
134
|
+
umaEndDateIso: datetime | None = None
|
135
|
+
commentsEnabled: bool | None = None
|
136
|
+
disqusThread: t.Any | None = None
|
137
|
+
gameStartTime: datetime | None = None
|
138
|
+
secondsDelay: int | None = None
|
139
139
|
clobTokenIds: list[str]
|
140
|
-
liquidityAmm: float | None
|
141
|
-
liquidityClob: float | None
|
142
|
-
makerBaseFee: int | None
|
143
|
-
takerBaseFee: int | None
|
144
|
-
negRisk: t.Any | None
|
145
|
-
negRiskRequestID: t.Any | None
|
146
|
-
negRiskMarketID: t.Any | None
|
140
|
+
liquidityAmm: float | None = None
|
141
|
+
liquidityClob: float | None = None
|
142
|
+
makerBaseFee: int | None = None
|
143
|
+
takerBaseFee: int | None = None
|
144
|
+
negRisk: t.Any | None = None
|
145
|
+
negRiskRequestID: t.Any | None = None
|
146
|
+
negRiskMarketID: t.Any | None = None
|
147
147
|
events: list[Event]
|
148
148
|
markets: list[Market1]
|
149
|
-
lower_bound_date: t.Any | None
|
150
|
-
upper_bound_date: t.Any | None
|
151
|
-
market_type: str | None
|
149
|
+
lower_bound_date: t.Any | None = None
|
150
|
+
upper_bound_date: t.Any | None = None
|
151
|
+
market_type: str | None = None
|
152
152
|
resolution_source: str
|
153
153
|
end_date: str
|
154
|
-
amm_type: t.Any | None
|
155
|
-
x_axis_value: t.Any | None
|
156
|
-
y_axis_value: t.Any | None
|
157
|
-
denomination_token: t.Any | None
|
154
|
+
amm_type: t.Any | None = None
|
155
|
+
x_axis_value: t.Any | None = None
|
156
|
+
y_axis_value: t.Any | None = None
|
157
|
+
denomination_token: t.Any | None = None
|
158
158
|
resolved_by: str
|
159
|
-
upper_bound: t.Any | None
|
160
|
-
lower_bound: t.Any | None
|
159
|
+
upper_bound: t.Any | None = None
|
160
|
+
lower_bound: t.Any | None = None
|
161
161
|
created_at: str
|
162
|
-
updated_at: t.Any | None
|
163
|
-
closed_time: t.Any | None
|
164
|
-
wide_format: bool | None
|
165
|
-
volume_num: USDC | None
|
166
|
-
liquidity_num: USDC | None
|
162
|
+
updated_at: t.Any | None = None
|
163
|
+
closed_time: t.Any | None = None
|
164
|
+
wide_format: bool | None = None
|
165
|
+
volume_num: USDC | None = None
|
166
|
+
liquidity_num: USDC | None = None
|
167
167
|
image_raw: str
|
168
168
|
resolutionData: ResolutionData
|
169
169
|
|
170
170
|
@field_validator("closedTime", mode="before")
|
171
|
-
def field_validator_closedTime(cls, v: str | None) -> str | None:
|
171
|
+
def field_validator_closedTime(cls, v: str | None = None) -> str | None:
|
172
172
|
return v.replace("+00", "") if v else None
|
173
173
|
|
174
174
|
@property
|
@@ -232,7 +232,7 @@ class PolymarketFullMarket(BaseModel):
|
|
232
232
|
ticker: str
|
233
233
|
slug: str
|
234
234
|
title: str
|
235
|
-
subtitle: t.Any | None
|
235
|
+
subtitle: t.Any | None = None
|
236
236
|
description: str
|
237
237
|
commentCount: int
|
238
238
|
resolutionSource: str
|
@@ -240,35 +240,35 @@ class PolymarketFullMarket(BaseModel):
|
|
240
240
|
endDate: datetime
|
241
241
|
image: str
|
242
242
|
icon: str
|
243
|
-
featuredImage: str | None
|
243
|
+
featuredImage: str | None = None
|
244
244
|
active: bool
|
245
245
|
closed: bool
|
246
246
|
archived: bool
|
247
247
|
new: bool
|
248
248
|
featured: bool
|
249
249
|
restricted: bool
|
250
|
-
liquidity: USDC | None
|
251
|
-
volume: USDC | None
|
252
|
-
volume24hr: USDC | None
|
253
|
-
competitive: float | None
|
254
|
-
openInterest: int | None
|
255
|
-
sortBy: str | None
|
250
|
+
liquidity: USDC | None = None
|
251
|
+
volume: USDC | None = None
|
252
|
+
volume24hr: USDC | None = None
|
253
|
+
competitive: float | None = None
|
254
|
+
openInterest: int | None = None
|
255
|
+
sortBy: str | None = None
|
256
256
|
createdAt: datetime
|
257
|
-
commentsEnabled: bool | None
|
258
|
-
disqusThread: t.Any | None
|
257
|
+
commentsEnabled: bool | None = None
|
258
|
+
disqusThread: t.Any | None = None
|
259
259
|
updatedAt: datetime
|
260
260
|
enableOrderBook: bool
|
261
|
-
liquidityAmm: float | None
|
262
|
-
liquidityClob: float | None
|
263
|
-
imageOptimized: ImageOptimized | None
|
264
|
-
iconOptimized: IconOptimized | None
|
265
|
-
featuredImageOptimized: str | None
|
266
|
-
negRisk: t.Any | None
|
267
|
-
negRiskMarketID: t.Any | None
|
268
|
-
negRiskFeeBips: t.Any | None
|
261
|
+
liquidityAmm: float | None = None
|
262
|
+
liquidityClob: float | None = None
|
263
|
+
imageOptimized: ImageOptimized | None = None
|
264
|
+
iconOptimized: IconOptimized | None = None
|
265
|
+
featuredImageOptimized: str | None = None
|
266
|
+
negRisk: t.Any | None = None
|
267
|
+
negRiskMarketID: t.Any | None = None
|
268
|
+
negRiskFeeBips: t.Any | None = None
|
269
269
|
markets: list[Market]
|
270
270
|
categories: list[Category] | None = None
|
271
|
-
series: t.Any | None
|
271
|
+
series: t.Any | None = None
|
272
272
|
image_raw: str
|
273
273
|
|
274
274
|
@property
|
@@ -355,12 +355,12 @@ class State(BaseModel):
|
|
355
355
|
) # It's none if you go to the website and it says "Oops...we didn't forecast this".
|
356
356
|
dataUpdateCount: int
|
357
357
|
dataUpdatedAt: int
|
358
|
-
error: t.Any | None
|
358
|
+
error: t.Any | None = None
|
359
359
|
errorUpdateCount: int
|
360
360
|
errorUpdatedAt: int
|
361
361
|
fetchFailureCount: int
|
362
|
-
fetchFailureReason: t.Any | None
|
363
|
-
fetchMeta: t.Any | None
|
362
|
+
fetchFailureReason: t.Any | None = None
|
363
|
+
fetchMeta: t.Any | None = None
|
364
364
|
isInvalidated: bool
|
365
365
|
status: str
|
366
366
|
fetchStatus: str
|
@@ -381,7 +381,7 @@ class PageProps(BaseModel):
|
|
381
381
|
key: str
|
382
382
|
dehydratedState: DehydratedState
|
383
383
|
eslug: str
|
384
|
-
mslug: str | None
|
384
|
+
mslug: str | None = None
|
385
385
|
isSingleMarket: bool
|
386
386
|
|
387
387
|
|
@@ -76,6 +76,7 @@ def is_predictable_binary(
|
|
76
76
|
question: str,
|
77
77
|
engine: str = "gpt-4-1106-preview",
|
78
78
|
prompt_template: str = QUESTION_IS_PREDICTABLE_BINARY_PROMPT,
|
79
|
+
max_tokens: int = 1024,
|
79
80
|
) -> bool:
|
80
81
|
"""
|
81
82
|
Evaluate if the question is actually answerable.
|
@@ -95,7 +96,7 @@ def is_predictable_binary(
|
|
95
96
|
|
96
97
|
prompt = ChatPromptTemplate.from_template(template=prompt_template)
|
97
98
|
messages = prompt.format_messages(question=question)
|
98
|
-
completion = str(llm(messages, max_tokens=
|
99
|
+
completion = str(llm(messages, max_tokens=max_tokens).content)
|
99
100
|
|
100
101
|
return parse_decision_yes_no_completion(question, completion)
|
101
102
|
|
@@ -106,6 +107,7 @@ def is_predictable_without_description(
|
|
106
107
|
description: str,
|
107
108
|
engine: str = "gpt-4-1106-preview",
|
108
109
|
prompt_template: str = QUESTION_IS_PREDICTABLE_WITHOUT_DESCRIPTION_PROMPT,
|
110
|
+
max_tokens: int = 1024,
|
109
111
|
) -> bool:
|
110
112
|
"""
|
111
113
|
Evaluate if the question is fully self-contained.
|
@@ -130,7 +132,7 @@ def is_predictable_without_description(
|
|
130
132
|
question=question,
|
131
133
|
description=description,
|
132
134
|
)
|
133
|
-
completion = str(llm(messages, max_tokens=
|
135
|
+
completion = str(llm(messages, max_tokens=max_tokens).content)
|
134
136
|
|
135
137
|
return parse_decision_yes_no_completion(question, completion)
|
136
138
|
|
@@ -1,10 +1,12 @@
|
|
1
1
|
import concurrent
|
2
2
|
from concurrent.futures import Executor
|
3
|
+
from concurrent.futures.process import ProcessPoolExecutor
|
3
4
|
from concurrent.futures.thread import ThreadPoolExecutor
|
4
5
|
from typing import Callable, Generator, TypeVar
|
5
6
|
|
6
7
|
# Max workers to 5 to avoid rate limiting on some APIs, create a custom executor if you need more workers.
|
7
8
|
DEFAULT_THREADPOOL_EXECUTOR = ThreadPoolExecutor(max_workers=5)
|
9
|
+
DEFAULT_PROCESSPOOL_EXECUTOR = ProcessPoolExecutor(max_workers=5)
|
8
10
|
|
9
11
|
A = TypeVar("A")
|
10
12
|
B = TypeVar("B")
|
@@ -13,8 +13,8 @@ prediction_market_agent_tooling/benchmark/agents.py,sha256=HPIFJvackW110ch3Ukktb
|
|
13
13
|
prediction_market_agent_tooling/benchmark/benchmark.py,sha256=xiHKzZx5GHSsDerFHMZ9j_LXAXnSaITSvv67iPe3MEU,21095
|
14
14
|
prediction_market_agent_tooling/benchmark/utils.py,sha256=iS1BzyXcCMfMm1Rx--1QCH0pHvBTblTndcDQFbTUJ2s,2897
|
15
15
|
prediction_market_agent_tooling/config.py,sha256=3j1iMiJWntSkqQv5HllJgihgqf9I2_0e0LPncVFRi7g,5260
|
16
|
-
prediction_market_agent_tooling/deploy/agent.py,sha256=
|
17
|
-
prediction_market_agent_tooling/deploy/agent_example.py,sha256=
|
16
|
+
prediction_market_agent_tooling/deploy/agent.py,sha256=QY19_fmYzhQCnS_BfnWbEF59gtNAD8dNebKZEcOI1uw,10809
|
17
|
+
prediction_market_agent_tooling/deploy/agent_example.py,sha256=V_yakxDvG3WZWRsQq6-b2ZLA8pPPnf0Jrw8iGkGZGG8,1019
|
18
18
|
prediction_market_agent_tooling/deploy/constants.py,sha256=M5ty8URipYMGe_G-RzxRydK3AFL6CyvmqCraJUrLBnE,82
|
19
19
|
prediction_market_agent_tooling/deploy/gcp/deploy.py,sha256=CYUgnfy-9XVk04kkxA_5yp0GE9Mw5caYqlFUZQ2j3ks,3739
|
20
20
|
prediction_market_agent_tooling/deploy/gcp/kubernetes_models.py,sha256=qYIHRxQLac3yxtZ8ChikiPG9O1aUQucHW0muTSm1nto,2627
|
@@ -37,11 +37,11 @@ prediction_market_agent_tooling/markets/omen/__init__.py,sha256=47DEQpj8HBSa-_TI
|
|
37
37
|
prediction_market_agent_tooling/markets/omen/data_models.py,sha256=oY-5wvFR4lXaTsmXVKrqrAQ8TWd-mAHLaxI1ETatLOc,14477
|
38
38
|
prediction_market_agent_tooling/markets/omen/omen.py,sha256=GSuUP8gjFKy6zp2dfq5AGlzu5T7B08cFdjjlw07rSdU,39114
|
39
39
|
prediction_market_agent_tooling/markets/omen/omen_contracts.py,sha256=JGXCO9MIVr-DGyoH2sxReAw7ZDTC_ev0UxDpq1QBv5Q,21854
|
40
|
-
prediction_market_agent_tooling/markets/omen/omen_resolving.py,sha256=
|
40
|
+
prediction_market_agent_tooling/markets/omen/omen_resolving.py,sha256=kXXU-tir6Bwvgrc7P9nX4hZELahI79DoJy_7DMAoe4M,9035
|
41
41
|
prediction_market_agent_tooling/markets/omen/omen_subgraph_handler.py,sha256=kDbeZ8ImLtBSFz0GoGdCqeC1Xd3_eGMAxvmLFT8kp8Y,25222
|
42
42
|
prediction_market_agent_tooling/markets/polymarket/api.py,sha256=HXmA1akA0qDj0m3e-GEvWG8x75pm6BX4H7YJPQcST7I,4767
|
43
43
|
prediction_market_agent_tooling/markets/polymarket/data_models.py,sha256=9CJzakyEcsn6DQBK2nOXjOMzTZBLAmK_KqevXvW17DI,4292
|
44
|
-
prediction_market_agent_tooling/markets/polymarket/data_models_web.py,sha256=
|
44
|
+
prediction_market_agent_tooling/markets/polymarket/data_models_web.py,sha256=yK0uxLQrwImVAXbvwscdmxTjSxMpAjCcN760EWEK_8M,11914
|
45
45
|
prediction_market_agent_tooling/markets/polymarket/polymarket.py,sha256=xGJejGYoDbLBfXabhOI85ZMNnAMsWTedCCPKP6KfGno,2721
|
46
46
|
prediction_market_agent_tooling/markets/polymarket/utils.py,sha256=m4JG6WULh5epCJt4XBMHg0ae5NoVhqlOvAl0A7DR9iM,2023
|
47
47
|
prediction_market_agent_tooling/monitor/langfuse/langfuse_wrapper.py,sha256=b6T69YB1x8kSUvW9uRFuSWPLOrXzapZG7m5O5SU0QTQ,895
|
@@ -66,15 +66,15 @@ prediction_market_agent_tooling/tools/google.py,sha256=SfVDxb3oEOUK8mpd0l3mTX9yb
|
|
66
66
|
prediction_market_agent_tooling/tools/hexbytes_custom.py,sha256=Bp94qgPjvjWf1Vb4lNzGFDXRdThw1rJ91vL6r2PWq5E,2096
|
67
67
|
prediction_market_agent_tooling/tools/image_gen/image_gen.py,sha256=HzRwBx62hOXBOmrtpkXaP9Qq1Ku03uUGdREocyjLQ_k,1266
|
68
68
|
prediction_market_agent_tooling/tools/image_gen/market_thumbnail_gen.py,sha256=g-2BWS11CS7K6QRNbZRMTX_Xo2xOwjyCdhnwaQygX1Y,1104
|
69
|
-
prediction_market_agent_tooling/tools/is_predictable.py,sha256=
|
70
|
-
prediction_market_agent_tooling/tools/parallelism.py,sha256=
|
69
|
+
prediction_market_agent_tooling/tools/is_predictable.py,sha256=wZtSmY182eErIkE-b0hL1C56k09Yk9lAY4N5MpK-Jsg,6258
|
70
|
+
prediction_market_agent_tooling/tools/parallelism.py,sha256=Rz8QdVUWX8KCbr8UZfaC_b1GBWIb3bXwITUumuvBJ60,1633
|
71
71
|
prediction_market_agent_tooling/tools/safe.py,sha256=h0xOO0eNtitClf0fPkn-0oTc6A_bflDTee98V_aiV-A,5195
|
72
72
|
prediction_market_agent_tooling/tools/singleton.py,sha256=CiIELUiI-OeS7U7eeHEt0rnVhtQGzwoUdAgn_7u_GBM,729
|
73
73
|
prediction_market_agent_tooling/tools/streamlit_user_login.py,sha256=NXEqfjT9Lc9QtliwSGRASIz1opjQ7Btme43H4qJbzgE,3010
|
74
74
|
prediction_market_agent_tooling/tools/utils.py,sha256=JE9YWtPPhnTgLiOyGAZDNG5K8nCwUY9IZEuAlm9UcxA,6611
|
75
75
|
prediction_market_agent_tooling/tools/web3_utils.py,sha256=nKRHmdLnWSKd3wpo-cysXGvhhrJ2Yf69sN2FFQfSt6s,10578
|
76
|
-
prediction_market_agent_tooling-0.43.
|
77
|
-
prediction_market_agent_tooling-0.43.
|
78
|
-
prediction_market_agent_tooling-0.43.
|
79
|
-
prediction_market_agent_tooling-0.43.
|
80
|
-
prediction_market_agent_tooling-0.43.
|
76
|
+
prediction_market_agent_tooling-0.43.2.dist-info/LICENSE,sha256=6or154nLLU6bELzjh0mCreFjt0m2v72zLi3yHE0QbeE,7650
|
77
|
+
prediction_market_agent_tooling-0.43.2.dist-info/METADATA,sha256=5Quxa1Np-dUlu07Lf34LIqKiEBIxDy3Mb2YVFq9Bd1k,7634
|
78
|
+
prediction_market_agent_tooling-0.43.2.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
79
|
+
prediction_market_agent_tooling-0.43.2.dist-info/entry_points.txt,sha256=m8PukHbeH5g0IAAmOf_1Ahm-sGAMdhSSRQmwtpmi2s8,81
|
80
|
+
prediction_market_agent_tooling-0.43.2.dist-info/RECORD,,
|
File without changes
|
File without changes
|