mplang-nightly 0.1.dev259__tar.gz → 0.1.dev260__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.
Files changed (380) hide show
  1. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/PKG-INFO +1 -1
  2. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/tee_impl.py +2 -1
  3. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/tee.py +26 -51
  4. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_tee_impl.py +4 -7
  5. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_tee.py +22 -55
  6. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/.gitignore +0 -0
  7. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/LICENSE +0 -0
  8. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/README.md +0 -0
  9. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/conf/3pc.yaml +0 -0
  10. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/stax_nn/README.md +0 -0
  11. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/stax_nn/models.py +0 -0
  12. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/stax_nn/stax_nn.py +0 -0
  13. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/xgboost/bench_fhe_hist.py +0 -0
  14. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/xgboost/hist_jax.py +0 -0
  15. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/xgboost/hist_jax_test.py +0 -0
  16. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/xgboost/naive_np.py +0 -0
  17. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/xgboost/readme.md +0 -0
  18. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/xgboost/sgb.py +0 -0
  19. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/examples/v1/xgboost/sgb_test.py +0 -0
  20. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/hatch_build.py +0 -0
  21. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/__init__.py +0 -0
  22. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/__init__.py +0 -0
  23. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/_device.py +0 -0
  24. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/analysis/__init__.py +0 -0
  25. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/analysis/diagram.py +0 -0
  26. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/__init__.py +0 -0
  27. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/cluster.py +0 -0
  28. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/comm.py +0 -0
  29. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/context_mgr.py +0 -0
  30. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/dtypes.py +0 -0
  31. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/expr/__init__.py +0 -0
  32. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/expr/ast.py +0 -0
  33. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/expr/evaluator.py +0 -0
  34. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/expr/printer.py +0 -0
  35. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/expr/transformer.py +0 -0
  36. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/expr/utils.py +0 -0
  37. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/expr/visitor.py +0 -0
  38. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/expr/walk.py +0 -0
  39. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/interp.py +0 -0
  40. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/mask.py +0 -0
  41. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/mpir.py +0 -0
  42. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/mpobject.py +0 -0
  43. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/mptype.py +0 -0
  44. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/pfunc.py +0 -0
  45. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/primitive.py +0 -0
  46. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/table.py +0 -0
  47. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/tensor.py +0 -0
  48. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/core/tracer.py +0 -0
  49. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/host.py +0 -0
  50. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/__init__.py +0 -0
  51. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/base.py +0 -0
  52. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/basic.py +0 -0
  53. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/context.py +0 -0
  54. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/crypto.py +0 -0
  55. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/fhe.py +0 -0
  56. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/mock_tee.py +0 -0
  57. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/phe.py +0 -0
  58. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/spu.py +0 -0
  59. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/sql_duckdb.py +0 -0
  60. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/stablehlo.py +0 -0
  61. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/kernels/value.py +0 -0
  62. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/__init__.py +0 -0
  63. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/base.py +0 -0
  64. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/basic.py +0 -0
  65. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/crypto.py +0 -0
  66. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/fhe.py +0 -0
  67. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/jax_cc.py +0 -0
  68. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/nnx_cc.py +0 -0
  69. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/phe.py +0 -0
  70. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/spu.py +0 -0
  71. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/sql_cc.py +0 -0
  72. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/ops/tee.py +0 -0
  73. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/protos/v1alpha1/mpir_pb2.py +0 -0
  74. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/protos/v1alpha1/mpir_pb2.pyi +0 -0
  75. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/protos/v1alpha1/value_pb2.py +0 -0
  76. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/protos/v1alpha1/value_pb2.pyi +0 -0
  77. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/__init__.py +0 -0
  78. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/cli.py +0 -0
  79. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/client.py +0 -0
  80. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/communicator.py +0 -0
  81. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/data_providers.py +0 -0
  82. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/driver.py +0 -0
  83. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/exceptions.py +0 -0
  84. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/http_api.md +0 -0
  85. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/link_comm.py +0 -0
  86. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/server.py +0 -0
  87. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/session.py +0 -0
  88. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/runtime/simulation.py +0 -0
  89. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/simp/__init__.py +0 -0
  90. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/simp/api.py +0 -0
  91. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/simp/mpi.py +0 -0
  92. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/simp/party.py +0 -0
  93. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/simp/random.py +0 -0
  94. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/simp/smpc.py +0 -0
  95. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/utils/__init__.py +0 -0
  96. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/utils/crypto.py +0 -0
  97. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/utils/func_utils.py +0 -0
  98. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/utils/spu_utils.py +0 -0
  99. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v1/utils/table_utils.py +0 -0
  100. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/__init__.py +0 -0
  101. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/__init__.py +0 -0
  102. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/bfv_impl.py +0 -0
  103. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/crypto_impl.py +0 -0
  104. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/field_impl.py +0 -0
  105. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/func_impl.py +0 -0
  106. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/phe_impl.py +0 -0
  107. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_design.md +0 -0
  108. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_driver/__init__.py +0 -0
  109. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_driver/http.py +0 -0
  110. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_driver/mem.py +0 -0
  111. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_driver/ops.py +0 -0
  112. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_driver/state.py +0 -0
  113. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_driver/values.py +0 -0
  114. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_worker/__init__.py +0 -0
  115. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_worker/http.py +0 -0
  116. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_worker/mem.py +0 -0
  117. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_worker/ops.py +0 -0
  118. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/simp_worker/state.py +0 -0
  119. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/spu_impl.py +0 -0
  120. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/spu_state.py +0 -0
  121. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/store_impl.py +0 -0
  122. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/table_impl.py +0 -0
  123. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/backends/tensor_impl.py +0 -0
  124. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/cli.py +0 -0
  125. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/cli_guide.md +0 -0
  126. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/__init__.py +0 -0
  127. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/bfv.py +0 -0
  128. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/crypto.py +0 -0
  129. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/dtypes.py +0 -0
  130. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/field.py +0 -0
  131. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/func.py +0 -0
  132. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/phe.py +0 -0
  133. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/simp.py +0 -0
  134. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/spu.py +0 -0
  135. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/store.py +0 -0
  136. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/table.py +0 -0
  137. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/dialects/tensor.py +0 -0
  138. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/README.md +0 -0
  139. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/__init__.py +0 -0
  140. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/context.py +0 -0
  141. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/graph.py +0 -0
  142. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/jit.py +0 -0
  143. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/object.py +0 -0
  144. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/primitive.py +0 -0
  145. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/printer.py +0 -0
  146. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/registry.py +0 -0
  147. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/serde.py +0 -0
  148. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/tracer.py +0 -0
  149. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/edsl/typing.py +0 -0
  150. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/kernels/Makefile +0 -0
  151. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/kernels/__init__.py +0 -0
  152. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/kernels/gf128.cpp +0 -0
  153. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/kernels/ldpc.cpp +0 -0
  154. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/kernels/okvs.cpp +0 -0
  155. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/kernels/okvs_opt.cpp +0 -0
  156. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/kernels/py_kernels.py +0 -0
  157. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/collective.py +0 -0
  158. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/device/__init__.py +0 -0
  159. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/device/api.py +0 -0
  160. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/device/cluster.py +0 -0
  161. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/ml/__init__.py +0 -0
  162. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/ml/sgb.py +0 -0
  163. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/__init__.py +0 -0
  164. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/_utils.py +0 -0
  165. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/analytics/__init__.py +0 -0
  166. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/analytics/aggregation.py +0 -0
  167. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/analytics/groupby.md +0 -0
  168. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/analytics/groupby.py +0 -0
  169. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/analytics/permutation.py +0 -0
  170. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/common/constants.py +0 -0
  171. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/ot/__init__.py +0 -0
  172. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/ot/base.py +0 -0
  173. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/ot/extension.py +0 -0
  174. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/ot/silent.py +0 -0
  175. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/psi/__init__.py +0 -0
  176. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/psi/cuckoo.py +0 -0
  177. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/psi/okvs.py +0 -0
  178. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/psi/okvs_gct.py +0 -0
  179. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/psi/oprf.py +0 -0
  180. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/psi/rr22.py +0 -0
  181. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/psi/unbalanced.py +0 -0
  182. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/vole/__init__.py +0 -0
  183. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/vole/gilboa.py +0 -0
  184. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/vole/ldpc.py +0 -0
  185. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/libs/mpc/vole/silver.py +0 -0
  186. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/runtime/__init__.py +0 -0
  187. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/runtime/dialect_state.py +0 -0
  188. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/runtime/interpreter.py +0 -0
  189. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/runtime/object_store.py +0 -0
  190. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/mplang/v2/runtime/value.py +0 -0
  191. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/pyproject.toml +0 -0
  192. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/__init__.py +0 -0
  193. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/conftest.py +0 -0
  194. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/__init__.py +0 -0
  195. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/analysis/test_diagram.py +0 -0
  196. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/conftest.py +0 -0
  197. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/__init__.py +0 -0
  198. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/expr/__init__.py +0 -0
  199. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/expr/conftest.py +0 -0
  200. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/expr/test_ast.py +0 -0
  201. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/expr/test_printer.py +0 -0
  202. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/expr/test_utils.py +0 -0
  203. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/expr/test_walk.py +0 -0
  204. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/test_cluster.py +0 -0
  205. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/test_dtype.py +0 -0
  206. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/test_mask.py +0 -0
  207. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/test_mpir.py +0 -0
  208. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/test_mptype.py +0 -0
  209. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/test_primitive.py +0 -0
  210. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/test_table.py +0 -0
  211. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/test_tensor.py +0 -0
  212. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/core/test_tracer.py +0 -0
  213. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/device/__init__.py +0 -0
  214. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/device/test_device_basic.py +0 -0
  215. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/integration/README.md +0 -0
  216. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/integration/test_crypto_roundtrip.py +0 -0
  217. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/integration/test_http_e2e.py +0 -0
  218. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/integration/test_symbols_roundtrip.py +0 -0
  219. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/integration/test_tee_workflow.py +0 -0
  220. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/integration/test_tutorials.py +0 -0
  221. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/integration/test_unused_param_integration.py +0 -0
  222. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/__init__.py +0 -0
  223. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_basic.py +0 -0
  224. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_debug_print.py +0 -0
  225. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_fhe.py +0 -0
  226. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_kernel_binding.py +0 -0
  227. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_phe.py +0 -0
  228. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_spu.py +0 -0
  229. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_sql_duckdb.py +0 -0
  230. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_stablehlo.py +0 -0
  231. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_value.py +0 -0
  232. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/kernels/test_value_serde.py +0 -0
  233. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/__init__.py +0 -0
  234. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/dummy.py +0 -0
  235. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_basic_pack.py +0 -0
  236. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_crypto.py +0 -0
  237. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_feop_base.py +0 -0
  238. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_jax_cc.py +0 -0
  239. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_nnx_cc.py +0 -0
  240. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_phe.py +0 -0
  241. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_spu.py +0 -0
  242. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_spu_defensive.py +0 -0
  243. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_sql.py +0 -0
  244. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_sql_cc.py +0 -0
  245. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/ops/test_table_tensor_conversion.py +0 -0
  246. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/runtime/__init__.py +0 -0
  247. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/runtime/test_cli.py +0 -0
  248. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/runtime/test_communicator.py +0 -0
  249. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/runtime/test_driver.py +0 -0
  250. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/runtime/test_server.py +0 -0
  251. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/runtime/test_simulation.py +0 -0
  252. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/simp/test_mpi.py +0 -0
  253. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/simp/test_random.py +0 -0
  254. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/simp/test_smpc.py +0 -0
  255. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/simp/test_sugar.py +0 -0
  256. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/utils/__init__.py +0 -0
  257. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/utils/server_fixtures.py +0 -0
  258. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/utils/test_func_utils.py +0 -0
  259. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/utils/test_spu_utils.py +0 -0
  260. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v1/utils/test_table_utils.py +0 -0
  261. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/__init__.py +0 -0
  262. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/__init__.py +0 -0
  263. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/simp_driver/__init__.py +0 -0
  264. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/simp_driver/test_http.py +0 -0
  265. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/simp_worker/__init__.py +0 -0
  266. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/simp_worker/test_http.py +0 -0
  267. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/simp_worker/test_mem.py +0 -0
  268. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_bfv_impl.py +0 -0
  269. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_crypto_impl.py +0 -0
  270. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_okvs_binding.py +0 -0
  271. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_simp_integration.py +0 -0
  272. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_simp_object_store.py +0 -0
  273. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_spu_impl.py +0 -0
  274. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_table_impl.py +0 -0
  275. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_tensor_impl.py +0 -0
  276. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/backends/test_verify_clean.py +0 -0
  277. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/conftest.py +0 -0
  278. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/__init__.py +0 -0
  279. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_bfv.py +0 -0
  280. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_crypto.py +0 -0
  281. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_dtypes.py +0 -0
  282. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_field.py +0 -0
  283. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_func.py +0 -0
  284. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_okvs.py +0 -0
  285. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_okvs_bench.py +0 -0
  286. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_phe.py +0 -0
  287. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_simp.py +0 -0
  288. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_simp_comm.py +0 -0
  289. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_spu.py +0 -0
  290. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_table.py +0 -0
  291. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/dialects/test_tensor.py +0 -0
  292. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/__init__.py +0 -0
  293. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/test_context.py +0 -0
  294. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/test_graph.py +0 -0
  295. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/test_primitive.py +0 -0
  296. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/test_primitive_multi_output.py +0 -0
  297. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/test_printer.py +0 -0
  298. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/test_serde.py +0 -0
  299. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/test_tracer.py +0 -0
  300. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/test_typing.py +0 -0
  301. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/edsl/test_typing_graph_serde.py +0 -0
  302. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/device/__init__.py +0 -0
  303. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/device/conftest.py +0 -0
  304. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/device/test_device_api_errors.py +0 -0
  305. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/device/test_device_dialects.py +0 -0
  306. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/device/test_device_layouts.py +0 -0
  307. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/device/test_device_tee.py +0 -0
  308. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/ml/__init__.py +0 -0
  309. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/ml/test_sgb.py +0 -0
  310. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/ml/test_sgb_bench.py +0 -0
  311. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/__init__.py +0 -0
  312. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/analytics/__init__.py +0 -0
  313. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/analytics/test_aggregation.py +0 -0
  314. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/analytics/test_groupby.py +0 -0
  315. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/analytics/test_permutation.py +0 -0
  316. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/ot/__init__.py +0 -0
  317. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/ot/test_ot.py +0 -0
  318. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/ot/test_ot_extension.py +0 -0
  319. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/ot/test_silent_ot.py +0 -0
  320. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/psi/__init__.py +0 -0
  321. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/psi/test_okvs_gct.py +0 -0
  322. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/psi/test_oprf.py +0 -0
  323. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/psi/test_psi.py +0 -0
  324. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/psi/test_psi_bench.py +0 -0
  325. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/psi/test_rr22.py +0 -0
  326. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/psi/verify_psi_okvs_logic.py +0 -0
  327. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/test_field_gf128.py +0 -0
  328. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/test_utils.py +0 -0
  329. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/vole/__init__.py +0 -0
  330. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/vole/test_gilboa_manual.py +0 -0
  331. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/vole/test_ldpc.py +0 -0
  332. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/vole/test_silver_vole.py +0 -0
  333. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/vole/test_vole.py +0 -0
  334. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/vole/test_vole_bench.py +0 -0
  335. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/mpc/vole/verify_vole_logic.py +0 -0
  336. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/test_collective.py +0 -0
  337. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/libs/test_simple_guide.py +0 -0
  338. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/runtime/test_interpreter_async.py +0 -0
  339. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/runtime/test_object_store.py +0 -0
  340. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/runtime/test_object_store_fs.py +0 -0
  341. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/test_fetch_semantics.py +0 -0
  342. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/test_pytree_io.py +0 -0
  343. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/test_store.py +0 -0
  344. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/utils/__init__.py +0 -0
  345. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tests/v2/utils/tensor_patch.py +0 -0
  346. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/MIGRATION.md +0 -0
  347. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/README.md +0 -0
  348. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/__init__.py +0 -0
  349. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/data/alice.csv +0 -0
  350. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/data/bob.csv +0 -0
  351. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/data/prepare_vertical_iris.py +0 -0
  352. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/run.sh +0 -0
  353. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/device/00_device_basics.py +0 -0
  354. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/device/01_function_decorator.py +0 -0
  355. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/device/02_simulation_and_driver.py +0 -0
  356. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/device/03_run_jax.py +0 -0
  357. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/device/04_run_sql.py +0 -0
  358. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/device/05_pipeline.py +0 -0
  359. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/device/06_ir_dump_and_analysis.py +0 -0
  360. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/device/07_run_nnx.py +0 -0
  361. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/pitfalls/late_binding.py +0 -0
  362. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/pitfalls/rand.py +0 -0
  363. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/simp/00_basic.py +0 -0
  364. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/simp/01_condition.py +0 -0
  365. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/simp/02_whileloop.py +0 -0
  366. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/simp/03_stdio.py +0 -0
  367. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/simp/04_phe.py +0 -0
  368. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/simp/05_tee.py +0 -0
  369. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/simp/06_fhe.py +0 -0
  370. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/simp/07_advanced.py +0 -0
  371. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v1/simp/08_simple_secret_sharing.py +0 -0
  372. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v2/00_device_basics.py +0 -0
  373. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v2/01_function_decorator.py +0 -0
  374. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v2/02_simulation_and_driver.py +0 -0
  375. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v2/03_run_jax.py +0 -0
  376. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v2/04_ir_dump_and_analysis.py +0 -0
  377. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v2/05_run_sql.py +0 -0
  378. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v2/06_pipeline.py +0 -0
  379. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v2/07_stax_nn.py +0 -0
  380. {mplang_nightly-0.1.dev259 → mplang_nightly-0.1.dev260}/tutorials/v2/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mplang-nightly
3
- Version: 0.1.dev259
3
+ Version: 0.1.dev260
4
4
  Summary: Multi-Party Programming Language
5
5
  Author-email: SecretFlow Team <secretflow-contact@service.alipay.com>
6
6
  License: Apache License
@@ -155,7 +155,8 @@ def _quote_gen_impl(
155
155
  f"got {type(pk).__name__}"
156
156
  )
157
157
 
158
- platform = op.attrs.get("platform", "mock")
158
+ # In a real implementation, the platform would be detected from the environment
159
+ platform = "mock"
159
160
 
160
161
  return MockQuoteValue(
161
162
  platform=platform,
@@ -22,11 +22,11 @@ computation where:
22
22
 
23
23
  Architecture:
24
24
  PublicKey (from crypto.kem_keygen)
25
- ↓ quote_gen(pk, platform)
26
- Quote[platform] (cryptographic attestation proof)
25
+ ↓ quote_gen(pk)
26
+ Quote (cryptographic attestation proof)
27
27
  ↓ (transfer to verifier)
28
28
  ↓ attest(quote)
29
- AttestedKey[platform, curve] (verified TEE public key)
29
+ AttestedKey[curve] (verified TEE public key)
30
30
  ↓ crypto.kem_derive(local_sk, attested_pk)
31
31
  SharedSecret (secure channel with TEE)
32
32
 
@@ -71,7 +71,6 @@ from mplang.v2.edsl import serde
71
71
  # --- Type Definitions
72
72
  # ==============================================================================
73
73
 
74
- Platform = Literal["mock", "sgx", "tdx", "sev"]
75
74
  KeyCurve = Literal["x25519", "secp256k1"]
76
75
 
77
76
 
@@ -86,37 +85,29 @@ class QuoteType(elt.BaseType):
86
85
 
87
86
  The quote can be verified by anyone with access to the TEE vendor's
88
87
  root certificates (Intel, AMD, etc.).
89
-
90
- Attributes:
91
- platform: TEE platform identifier
92
88
  """
93
89
 
94
- def __init__(self, platform: str = "mock"):
95
- self.platform: Platform = platform # type: ignore[assignment]
96
-
97
90
  def __str__(self) -> str:
98
- return f"TEEQuote[{self.platform}]"
91
+ return "TEEQuote"
99
92
 
100
93
  def __repr__(self) -> str:
101
- return f"QuoteType(platform={self.platform!r})"
94
+ return "QuoteType()"
102
95
 
103
96
  def __eq__(self, other: object) -> bool:
104
- if not isinstance(other, QuoteType):
105
- return False
106
- return self.platform == other.platform
97
+ return isinstance(other, QuoteType)
107
98
 
108
99
  def __hash__(self) -> int:
109
- return hash(("QuoteType", self.platform))
100
+ return hash("QuoteType")
110
101
 
111
102
  # --- Serde methods ---
112
103
  _serde_kind: ClassVar[str] = "tee.QuoteType"
113
104
 
114
105
  def to_json(self) -> dict[str, Any]:
115
- return {"platform": self.platform}
106
+ return {}
116
107
 
117
108
  @classmethod
118
109
  def from_json(cls, data: dict[str, Any]) -> QuoteType:
119
- return cls(platform=data["platform"])
110
+ return cls()
120
111
 
121
112
 
122
113
  @serde.register_class
@@ -134,37 +125,35 @@ class AttestedKeyType(elt.BaseType):
134
125
  3. The public key is bound in the quote's report_data
135
126
 
136
127
  Attributes:
137
- platform: TEE platform that generated the original quote
138
128
  curve: Cryptographic curve of the key
139
129
  """
140
130
 
141
- def __init__(self, platform: str = "mock", curve: str = "x25519"):
142
- self.platform: Platform = platform # type: ignore[assignment]
131
+ def __init__(self, curve: str = "x25519"):
143
132
  self.curve: KeyCurve = curve # type: ignore[assignment]
144
133
 
145
134
  def __str__(self) -> str:
146
- return f"AttestedKey[{self.platform}, {self.curve}]"
135
+ return f"AttestedKey[{self.curve}]"
147
136
 
148
137
  def __repr__(self) -> str:
149
- return f"AttestedKeyType(platform={self.platform!r}, curve={self.curve!r})"
138
+ return f"AttestedKeyType(curve={self.curve!r})"
150
139
 
151
140
  def __eq__(self, other: object) -> bool:
152
141
  if not isinstance(other, AttestedKeyType):
153
142
  return False
154
- return self.platform == other.platform and self.curve == other.curve
143
+ return self.curve == other.curve
155
144
 
156
145
  def __hash__(self) -> int:
157
- return hash(("AttestedKeyType", self.platform, self.curve))
146
+ return hash(("AttestedKeyType", self.curve))
158
147
 
159
148
  # --- Serde methods ---
160
149
  _serde_kind: ClassVar[str] = "tee.AttestedKeyType"
161
150
 
162
151
  def to_json(self) -> dict[str, Any]:
163
- return {"platform": self.platform, "curve": self.curve}
152
+ return {"curve": self.curve}
164
153
 
165
154
  @classmethod
166
155
  def from_json(cls, data: dict[str, Any]) -> AttestedKeyType:
167
- return cls(platform=data["platform"], curve=data["curve"])
156
+ return cls(curve=data["curve"])
168
157
 
169
158
 
170
159
  @serde.register_class
@@ -173,37 +162,29 @@ class MeasurementType(elt.BaseType):
173
162
 
174
163
  Represents a cryptographic hash of the code and initial configuration
175
164
  running inside the TEE. Used to verify the TEE is running expected code.
176
-
177
- Attributes:
178
- platform: TEE platform
179
165
  """
180
166
 
181
- def __init__(self, platform: str = "mock"):
182
- self.platform: Platform = platform # type: ignore[assignment]
183
-
184
167
  def __str__(self) -> str:
185
- return f"TEEMeasurement[{self.platform}]"
168
+ return "TEEMeasurement"
186
169
 
187
170
  def __repr__(self) -> str:
188
- return f"MeasurementType(platform={self.platform!r})"
171
+ return "MeasurementType()"
189
172
 
190
173
  def __eq__(self, other: object) -> bool:
191
- if not isinstance(other, MeasurementType):
192
- return False
193
- return self.platform == other.platform
174
+ return isinstance(other, MeasurementType)
194
175
 
195
176
  def __hash__(self) -> int:
196
- return hash(("MeasurementType", self.platform))
177
+ return hash("MeasurementType")
197
178
 
198
179
  # --- Serde methods ---
199
180
  _serde_kind: ClassVar[str] = "tee.MeasurementType"
200
181
 
201
182
  def to_json(self) -> dict[str, Any]:
202
- return {"platform": self.platform}
183
+ return {}
203
184
 
204
185
  @classmethod
205
186
  def from_json(cls, data: dict[str, Any]) -> MeasurementType:
206
- return cls(platform=data["platform"])
187
+ return cls()
207
188
 
208
189
 
209
190
  # ==============================================================================
@@ -223,14 +204,11 @@ get_measurement_p = el.Primitive[el.Object]("tee.get_measurement")
223
204
  @quote_gen_p.def_abstract_eval
224
205
  def _quote_gen_ae(
225
206
  pk: elt.BaseType,
226
- *,
227
- platform: Platform = "mock",
228
207
  ) -> QuoteType:
229
208
  """Generate a TEE quote binding the provided public key.
230
209
 
231
210
  Args:
232
211
  pk: Public key to bind in the quote (must be PublicKeyType from crypto.kem_keygen)
233
- platform: TEE platform to use
234
212
 
235
213
  Returns:
236
214
  QuoteType representing the attestation proof
@@ -243,7 +221,7 @@ def _quote_gen_ae(
243
221
  f"quote_gen expects PublicKeyType (from crypto.kem_keygen), "
244
222
  f"got {type(pk).__name__}"
245
223
  )
246
- return QuoteType(platform=platform)
224
+ return QuoteType()
247
225
 
248
226
 
249
227
  @attest_p.def_abstract_eval
@@ -261,7 +239,7 @@ def _attest_ae(
261
239
  Returns:
262
240
  AttestedKeyType containing the verified public key
263
241
  """
264
- return AttestedKeyType(platform=quote.platform, curve=expected_curve)
242
+ return AttestedKeyType(curve=expected_curve)
265
243
 
266
244
 
267
245
  @get_measurement_p.def_abstract_eval
@@ -276,7 +254,7 @@ def _get_measurement_ae(
276
254
  Returns:
277
255
  MeasurementType containing the code measurement
278
256
  """
279
- return MeasurementType(platform=quote.platform)
257
+ return MeasurementType()
280
258
 
281
259
 
282
260
  # ==============================================================================
@@ -286,7 +264,6 @@ def _get_measurement_ae(
286
264
 
287
265
  def quote_gen(
288
266
  pk: el.Object,
289
- platform: Platform = "mock",
290
267
  ) -> el.Object:
291
268
  """Generate a TEE attestation quote binding the provided public key.
292
269
 
@@ -297,7 +274,6 @@ def quote_gen(
297
274
 
298
275
  Args:
299
276
  pk: Public key to bind (typically from crypto.kem_keygen)
300
- platform: TEE platform ("mock", "sgx", "tdx", "sev")
301
277
 
302
278
  Returns:
303
279
  Object[QuoteType] - The attestation quote
@@ -306,7 +282,7 @@ def quote_gen(
306
282
  >>> sk, pk = crypto.kem_keygen("x25519")
307
283
  >>> quote = tee.quote_gen(pk) # Bind pk in attestation
308
284
  """
309
- return quote_gen_p.bind(pk, platform=platform)
285
+ return quote_gen_p.bind(pk)
310
286
 
311
287
 
312
288
  def attest(
@@ -360,7 +336,6 @@ __all__ = [
360
336
  "AttestedKeyType",
361
337
  "KeyCurve",
362
338
  "MeasurementType",
363
- "Platform",
364
339
  "QuoteType",
365
340
  "attest",
366
341
  "attest_p",
@@ -49,11 +49,10 @@ class TestMockTEEExecution:
49
49
  _sk, pk = crypto.kem_keygen("x25519")
50
50
 
51
51
  with pytest.warns(UserWarning, match="Insecure mock TEE"):
52
- quote = tee.quote_gen(pk, platform="mock")
52
+ quote = tee.quote_gen(pk)
53
53
 
54
54
  # Verify type propagation
55
55
  assert isinstance(quote.type, tee.QuoteType)
56
- assert quote.type.platform == "mock"
57
56
 
58
57
  def test_attest_execution(self):
59
58
  """Test attest primitive execution produces correct type.
@@ -65,7 +64,7 @@ class TestMockTEEExecution:
65
64
  _sk, pk = crypto.kem_keygen("x25519")
66
65
 
67
66
  with pytest.warns(UserWarning, match="Insecure mock TEE"):
68
- quote = tee.quote_gen(pk, platform="sgx")
67
+ quote = tee.quote_gen(pk)
69
68
 
70
69
  with pytest.warns(UserWarning, match="Insecure mock TEE"):
71
70
  attested_pk = tee.attest(quote, expected_curve="x25519")
@@ -73,7 +72,6 @@ class TestMockTEEExecution:
73
72
  # Type level still shows AttestedKeyType (for type checking)
74
73
  # But runtime returns PublicKeyValue directly
75
74
  assert isinstance(attested_pk.type, tee.AttestedKeyType)
76
- assert attested_pk.type.platform == "sgx"
77
75
  assert attested_pk.type.curve == "x25519"
78
76
 
79
77
  def test_full_attestation_workflow(self):
@@ -82,14 +80,13 @@ class TestMockTEEExecution:
82
80
  _sk, pk = crypto.kem_keygen("x25519")
83
81
 
84
82
  with pytest.warns(UserWarning, match="Insecure mock TEE"):
85
- quote = tee.quote_gen(pk, platform="tdx")
83
+ quote = tee.quote_gen(pk)
86
84
 
87
85
  with pytest.warns(UserWarning, match="Insecure mock TEE"):
88
86
  attested_pk = tee.attest(quote, expected_curve="x25519")
89
87
 
90
88
  # Verify types propagate correctly through the workflow
91
89
  assert isinstance(attested_pk.type, tee.AttestedKeyType)
92
- assert attested_pk.type.platform == "tdx"
93
90
 
94
91
 
95
92
  class TestTEEWithCryptoIntegration:
@@ -102,7 +99,7 @@ class TestTEEWithCryptoIntegration:
102
99
  tee_sk, tee_pk = crypto.kem_keygen("x25519")
103
100
 
104
101
  with pytest.warns(UserWarning, match="Insecure mock TEE"):
105
- quote = tee.quote_gen(tee_pk, platform="sgx")
102
+ quote = tee.quote_gen(tee_pk)
106
103
 
107
104
  # Verifier side: attest and generate own keypair
108
105
  with pytest.warns(UserWarning, match="Insecure mock TEE"):
@@ -24,73 +24,54 @@ from mplang.v2.dialects import crypto, tee
24
24
  class TestTEETypes:
25
25
  """Test TEE type definitions."""
26
26
 
27
- def test_quote_type_default(self):
28
- """Test QuoteType with default platform."""
27
+ def test_quote_type(self):
28
+ """Test QuoteType."""
29
29
  qt = tee.QuoteType()
30
- assert qt.platform == "mock"
31
- assert str(qt) == "TEEQuote[mock]"
32
- assert repr(qt) == "QuoteType(platform='mock')"
33
-
34
- def test_quote_type_platforms(self):
35
- """Test QuoteType with different platforms."""
36
- platforms = ["mock", "sgx", "tdx", "sev"]
37
- for platform in platforms:
38
- qt = tee.QuoteType(platform=platform)
39
- assert qt.platform == platform
40
- assert str(qt) == f"TEEQuote[{platform}]"
30
+ assert str(qt) == "TEEQuote"
31
+ assert repr(qt) == "QuoteType()"
41
32
 
42
33
  def test_quote_type_equality(self):
43
34
  """Test QuoteType equality and hashing."""
44
- q1 = tee.QuoteType("sgx")
45
- q2 = tee.QuoteType("sgx")
46
- q3 = tee.QuoteType("tdx")
35
+ q1 = tee.QuoteType()
36
+ q2 = tee.QuoteType()
47
37
 
48
38
  assert q1 == q2
49
- assert q1 != q3
50
39
  assert hash(q1) == hash(q2)
51
- assert hash(q1) != hash(q3)
52
40
 
53
- def test_attested_key_type_default(self):
54
- """Test AttestedKeyType with defaults."""
41
+ def test_attested_key_type(self):
42
+ """Test AttestedKeyType."""
55
43
  akt = tee.AttestedKeyType()
56
- assert akt.platform == "mock"
57
44
  assert akt.curve == "x25519"
58
- assert str(akt) == "AttestedKey[mock, x25519]"
45
+ assert str(akt) == "AttestedKey[x25519]"
59
46
 
60
47
  def test_attested_key_type_custom(self):
61
48
  """Test AttestedKeyType with custom values."""
62
- akt = tee.AttestedKeyType(platform="sgx", curve="secp256k1")
63
- assert akt.platform == "sgx"
49
+ akt = tee.AttestedKeyType(curve="secp256k1")
64
50
  assert akt.curve == "secp256k1"
65
- assert str(akt) == "AttestedKey[sgx, secp256k1]"
51
+ assert str(akt) == "AttestedKey[secp256k1]"
66
52
 
67
53
  def test_attested_key_type_equality(self):
68
54
  """Test AttestedKeyType equality and hashing."""
69
- a1 = tee.AttestedKeyType("sgx", "x25519")
70
- a2 = tee.AttestedKeyType("sgx", "x25519")
71
- a3 = tee.AttestedKeyType("sgx", "secp256k1")
72
- a4 = tee.AttestedKeyType("tdx", "x25519")
55
+ a1 = tee.AttestedKeyType("x25519")
56
+ a2 = tee.AttestedKeyType("x25519")
57
+ a3 = tee.AttestedKeyType("secp256k1")
73
58
 
74
59
  assert a1 == a2
75
60
  assert a1 != a3 # Different curve
76
- assert a1 != a4 # Different platform
77
61
  assert hash(a1) == hash(a2)
78
62
 
79
63
  def test_measurement_type(self):
80
64
  """Test MeasurementType."""
81
- mt = tee.MeasurementType(platform="sgx")
82
- assert mt.platform == "sgx"
83
- assert str(mt) == "TEEMeasurement[sgx]"
84
- assert repr(mt) == "MeasurementType(platform='sgx')"
65
+ mt = tee.MeasurementType()
66
+ assert str(mt) == "TEEMeasurement"
67
+ assert repr(mt) == "MeasurementType()"
85
68
 
86
69
  def test_measurement_type_equality(self):
87
70
  """Test MeasurementType equality."""
88
- m1 = tee.MeasurementType("sgx")
89
- m2 = tee.MeasurementType("sgx")
90
- m3 = tee.MeasurementType("tdx")
71
+ m1 = tee.MeasurementType()
72
+ m2 = tee.MeasurementType()
91
73
 
92
74
  assert m1 == m2
93
- assert m1 != m3
94
75
  assert hash(m1) == hash(m2)
95
76
 
96
77
 
@@ -111,26 +92,12 @@ class TestTEETypeInference:
111
92
  quote_op = graph.operations[1]
112
93
  assert quote_op.opcode == "tee.quote_gen"
113
94
 
114
- def test_quote_gen_with_platform(self):
115
- """Test quote_gen with explicit platform."""
116
-
117
- def workflow():
118
- _sk, pk = crypto.kem_keygen("x25519")
119
- quote = tee.quote_gen(pk, platform="sgx")
120
- return quote
121
-
122
- traced = el.trace(workflow)
123
- graph = traced.graph
124
-
125
- quote_op = graph.operations[1]
126
- assert quote_op.attrs["platform"] == "sgx"
127
-
128
95
  def test_attest_in_graph(self):
129
96
  """Test attest creates correct graph operation."""
130
97
 
131
98
  def workflow():
132
99
  _sk, pk = crypto.kem_keygen("x25519")
133
- quote = tee.quote_gen(pk, platform="sgx")
100
+ quote = tee.quote_gen(pk)
134
101
  attested_pk = tee.attest(quote, expected_curve="secp256k1")
135
102
  return attested_pk
136
103
 
@@ -147,7 +114,7 @@ class TestTEETypeInference:
147
114
 
148
115
  def workflow():
149
116
  _sk, pk = crypto.kem_keygen("x25519")
150
- quote = tee.quote_gen(pk, platform="sev")
117
+ quote = tee.quote_gen(pk)
151
118
  measurement = tee.get_measurement(quote)
152
119
  return measurement
153
120
 
@@ -163,7 +130,7 @@ class TestTEETypeInference:
163
130
 
164
131
  def workflow():
165
132
  _sk, pk = crypto.kem_keygen("x25519")
166
- quote = tee.quote_gen(pk, platform="tdx")
133
+ quote = tee.quote_gen(pk)
167
134
  attested_pk = tee.attest(quote)
168
135
  measurement = tee.get_measurement(quote)
169
136
  return attested_pk, measurement