proof-of-portfolio 0.0.46__tar.gz → 0.0.47__tar.gz
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.
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/PKG-INFO +1 -1
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/__init__.py +8 -6
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/_version.py +1 -1
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/PKG-INFO +1 -1
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/pyproject.toml +1 -1
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/README.md +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/analyze_data.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/calmar.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/cps_to_log_returns.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/drawdown.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/merkle.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/mod.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/omega.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/position.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/sharpe.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/sortino.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/core/tstat.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/float/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/float/Verifier.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/float/src/lib.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/lib.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/nrstat.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/utils/ann_excess_return.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/utils/ann_volatility.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/utils/average.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/utils/constants.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/utils/mod.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/utils/sqrt.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/utils/variance.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/components/src/utils/weighting_distribution.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/generate_inputs.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/proof/proof +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/proof/public_inputs +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/target/circuits.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/vk/vk +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_calmar/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_calmar/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_calmar/target/just_calmar.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_cps_to_log_return/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_cps_to_log_return/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_cps_to_log_return/target/just_cps_to_log_return.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_drawdown/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_drawdown/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_drawdown/target/just_drawdown.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_omega/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_omega/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_omega/target/just_omega.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_sharpe/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_sharpe/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_sharpe/target/just_sharpe.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_sortino/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_sortino/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_sortino/target/just_sortino.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_tstat/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_tstat/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/just_tstat/target/just_tstat.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/merkle_generator/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demo/merkle_generator/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/all.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/calmar.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/drawdown.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/generate_input_data.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/log_returns.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/main.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/omega.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/sharpe.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/sortino.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/tstat.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/utils.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/main.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/min_metrics.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/miner.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/post_install.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/proof_generator.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/returns_generator/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/returns_generator/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/returns_generator/target/returns_generator.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/signal_processor.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/tree_generator/Nargo.toml +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/tree_generator/src/main.nr +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/tree_generator/target/tree_generator.json +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/tree_generator/target.gz +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/validator.py +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/SOURCES.txt +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/dependency_links.txt +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/entry_points.txt +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/requires.txt +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/top_level.txt +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/setup.cfg +0 -0
- {proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: proof-of-portfolio
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.47
|
4
4
|
Summary: Zero-Knowledge Proof framework for verifiable, private portfolio performance metrics
|
5
5
|
Author-email: "Inference Labs, Inc." <info@inferencelabs.com>
|
6
6
|
Requires-Python: >=3.10
|
@@ -52,14 +52,14 @@ def requires_dependencies(func):
|
|
52
52
|
return wrapper
|
53
53
|
|
54
54
|
|
55
|
-
def _prove_worker(miner_data, hotkey):
|
55
|
+
def _prove_worker(miner_data, hotkey, verbose=False):
|
56
56
|
"""
|
57
57
|
Worker function to run proof generation in a separate process.
|
58
58
|
"""
|
59
59
|
try:
|
60
60
|
from .proof_generator import generate_proof
|
61
61
|
|
62
|
-
result = generate_proof(miner_data, hotkey)
|
62
|
+
result = generate_proof(miner_data, hotkey, verbose=verbose)
|
63
63
|
|
64
64
|
return {
|
65
65
|
"status": "success",
|
@@ -81,13 +81,14 @@ def _prove_worker(miner_data, hotkey):
|
|
81
81
|
|
82
82
|
|
83
83
|
@requires_dependencies
|
84
|
-
async def prove(miner_data, hotkey):
|
84
|
+
async def prove(miner_data, hotkey, verbose=False):
|
85
85
|
"""
|
86
86
|
Generate zero-knowledge proof for miner portfolio data asynchronously.
|
87
87
|
|
88
88
|
Args:
|
89
89
|
miner_data: Dictionary containing perf_ledgers and positions for the miner
|
90
90
|
hotkey: Miner's hotkey
|
91
|
+
verbose: Boolean to control logging verbosity
|
91
92
|
|
92
93
|
Returns:
|
93
94
|
Dictionary with proof results including status, portfolio_metrics, etc.
|
@@ -97,7 +98,7 @@ async def prove(miner_data, hotkey):
|
|
97
98
|
with ProcessPoolExecutor(max_workers=1) as executor:
|
98
99
|
try:
|
99
100
|
result = await loop.run_in_executor(
|
100
|
-
executor, _prove_worker, miner_data, hotkey
|
101
|
+
executor, _prove_worker, miner_data, hotkey, verbose
|
101
102
|
)
|
102
103
|
return result
|
103
104
|
except Exception as e:
|
@@ -108,15 +109,16 @@ async def prove(miner_data, hotkey):
|
|
108
109
|
}
|
109
110
|
|
110
111
|
|
111
|
-
def prove_sync(miner_data, hotkey):
|
112
|
+
def prove_sync(miner_data, hotkey, verbose=False):
|
112
113
|
"""
|
113
114
|
Synchronous wrapper for the prove function for backward compatibility.
|
114
115
|
|
115
116
|
Args:
|
116
117
|
miner_data: Dictionary containing perf_ledgers and positions for the miner
|
117
118
|
hotkey: Miner's hotkey
|
119
|
+
verbose: Boolean to control logging verbosity
|
118
120
|
|
119
121
|
Returns:
|
120
122
|
Dictionary with proof results including status, portfolio_metrics, etc.
|
121
123
|
"""
|
122
|
-
return _prove_worker(miner_data, hotkey)
|
124
|
+
return _prove_worker(miner_data, hotkey, verbose)
|
@@ -1,2 +1,2 @@
|
|
1
1
|
# This file is auto-generated during build
|
2
|
-
__version__ = "0.0.
|
2
|
+
__version__ = "0.0.47"
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/PKG-INFO
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: proof-of-portfolio
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.47
|
4
4
|
Summary: Zero-Knowledge Proof framework for verifiable, private portfolio performance metrics
|
5
5
|
Author-email: "Inference Labs, Inc." <info@inferencelabs.com>
|
6
6
|
Requires-Python: >=3.10
|
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
|
|
5
5
|
|
6
6
|
[project]
|
7
7
|
name = "proof-of-portfolio"
|
8
|
-
version = "0.0.
|
8
|
+
version = "0.0.47"
|
9
9
|
description = "Zero-Knowledge Proof framework for verifiable, private portfolio performance metrics"
|
10
10
|
readme = "README.md"
|
11
11
|
authors = [{ name = "Inference Labs, Inc.", email = "info@inferencelabs.com" }]
|
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/Nargo.toml
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/proof/proof
RENAMED
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/circuits/src/main.nr
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/drawdown.py
RENAMED
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/demos/log_returns.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/proof_generator.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/signal_processor.py
RENAMED
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/tree_generator/Nargo.toml
RENAMED
File without changes
|
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio/tree_generator/target.gz
RENAMED
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/SOURCES.txt
RENAMED
File without changes
|
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/entry_points.txt
RENAMED
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/requires.txt
RENAMED
File without changes
|
{proof_of_portfolio-0.0.46 → proof_of_portfolio-0.0.47}/proof_of_portfolio.egg-info/top_level.txt
RENAMED
File without changes
|
File without changes
|
File without changes
|