luminarycloud 0.15.4__py3-none-any.whl → 0.16.0__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.
Files changed (58) hide show
  1. luminarycloud/_helpers/__init__.py +1 -0
  2. luminarycloud/_helpers/_code_representation.py +18 -3
  3. luminarycloud/_helpers/_create_geometry.py +36 -17
  4. luminarycloud/_helpers/download.py +67 -1
  5. luminarycloud/_proto/api/v0/luminarycloud/geometry/geometry_pb2.pyi +1 -2
  6. luminarycloud/_proto/api/v0/luminarycloud/inference/inference_pb2.py +9 -9
  7. luminarycloud/_proto/api/v0/luminarycloud/inference/inference_pb2.pyi +7 -4
  8. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.py +45 -21
  9. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2.pyi +65 -0
  10. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.py +34 -0
  11. luminarycloud/_proto/api/v0/luminarycloud/physics_ai/physics_ai_pb2_grpc.pyi +12 -0
  12. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2.py +191 -82
  13. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2.pyi +327 -74
  14. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2_grpc.py +140 -65
  15. luminarycloud/_proto/api/v0/luminarycloud/thirdpartyintegration/onshape/onshape_pb2_grpc.pyi +74 -38
  16. luminarycloud/_proto/api/v0/luminarycloud/upload/upload_pb2.py +6 -2
  17. luminarycloud/_proto/api/v0/luminarycloud/upload/upload_pb2_grpc.py +71 -0
  18. luminarycloud/_proto/api/v0/luminarycloud/upload/upload_pb2_grpc.pyi +32 -0
  19. luminarycloud/_proto/assistant/assistant_pb2.py +76 -75
  20. luminarycloud/_proto/assistant/assistant_pb2.pyi +21 -18
  21. luminarycloud/_proto/assistant/assistant_pb2_grpc.py +14 -14
  22. luminarycloud/_proto/assistant/assistant_pb2_grpc.pyi +8 -8
  23. luminarycloud/_proto/base/base_pb2.py +7 -6
  24. luminarycloud/_proto/base/base_pb2.pyi +4 -0
  25. luminarycloud/_proto/client/simulation_pb2.py +188 -186
  26. luminarycloud/_proto/client/simulation_pb2.pyi +10 -2
  27. luminarycloud/_proto/geometry/geometry_pb2.py +63 -64
  28. luminarycloud/_proto/geometry/geometry_pb2.pyi +5 -1
  29. luminarycloud/_proto/inferenceservice/inferenceservice_pb2.py +11 -11
  30. luminarycloud/_proto/inferenceservice/inferenceservice_pb2.pyi +12 -4
  31. luminarycloud/_proto/quantity/quantity_pb2.py +11 -2
  32. luminarycloud/_proto/quantity/quantity_pb2.pyi +6 -0
  33. luminarycloud/_proto/table/table_pb2.pyi +4 -2
  34. luminarycloud/_proto/upload/upload_pb2.py +47 -7
  35. luminarycloud/_proto/upload/upload_pb2.pyi +62 -0
  36. luminarycloud/enum/quantity_type.py +15 -0
  37. luminarycloud/mesh.py +8 -1
  38. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/__init__.py +1 -0
  39. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_auto_.py +30 -0
  40. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation/robust_startup/robust_startup_on_.py +1 -1
  41. luminarycloud/params/simulation/physics/fluid/solution_controls/fluid_relaxation_method/fluid_implicit_relaxation_.py +7 -3
  42. luminarycloud/params/simulation/physics/fluid/solution_controls_fluid_.py +4 -0
  43. luminarycloud/params/simulation/physics/fluid/turbulence_.py +1 -1
  44. luminarycloud/params/simulation/physics/fluid_.py +1 -1
  45. luminarycloud/params/simulation/physics/heat/solution_controls/heat_relaxation_method/heat_implicit_relaxation_.py +1 -1
  46. luminarycloud/params/simulation/physics/heat/solution_controls_heat_.py +1 -1
  47. luminarycloud/physics_ai/__init__.py +4 -0
  48. luminarycloud/physics_ai/inference.py +140 -4
  49. luminarycloud/physics_ai/solution.py +60 -0
  50. luminarycloud/tables.py +6 -8
  51. luminarycloud/vis/data_extraction.py +4 -5
  52. luminarycloud/vis/display.py +26 -11
  53. luminarycloud/vis/filters.py +116 -68
  54. luminarycloud/vis/primitives.py +3 -2
  55. luminarycloud/vis/visualization.py +197 -40
  56. {luminarycloud-0.15.4.dist-info → luminarycloud-0.16.0.dist-info}/METADATA +1 -1
  57. {luminarycloud-0.15.4.dist-info → luminarycloud-0.16.0.dist-info}/RECORD +58 -56
  58. {luminarycloud-0.15.4.dist-info → luminarycloud-0.16.0.dist-info}/WHEEL +0 -0
@@ -49,6 +49,20 @@ class UploadServiceStub:
49
49
  """Complete an ongoing upload. Must be called after all file data has been
50
50
  successfully uploaded.
51
51
  """
52
+ UploadWebGeometry: grpc.UnaryUnaryMultiCallable[
53
+ luminarycloud._proto.upload.upload_pb2.UploadWebGeometryRequest,
54
+ luminarycloud._proto.upload.upload_pb2.UploadWebGeometryReply,
55
+ ]
56
+ """Upload a URL referencing an asset on from an online geometry provider
57
+ (e.g., Onshape). We store the reference and and perform no actual file
58
+ transfer until use of the Onshape asset. It is merely for tracking references
59
+ to the object.
60
+ """
61
+ GetWebGeometryBaseUrl: grpc.UnaryUnaryMultiCallable[
62
+ luminarycloud._proto.upload.upload_pb2.GetWebGeometryBaseUrlRequest,
63
+ luminarycloud._proto.upload.upload_pb2.GetWebGeometryBaseUrlReply,
64
+ ]
65
+ """Get the originally associated URL for a given web geometry ID."""
52
66
 
53
67
  class UploadServiceServicer(metaclass=abc.ABCMeta):
54
68
  """Provides APIs for managing uploads."""
@@ -100,5 +114,23 @@ class UploadServiceServicer(metaclass=abc.ABCMeta):
100
114
  """Complete an ongoing upload. Must be called after all file data has been
101
115
  successfully uploaded.
102
116
  """
117
+ @abc.abstractmethod
118
+ def UploadWebGeometry(
119
+ self,
120
+ request: luminarycloud._proto.upload.upload_pb2.UploadWebGeometryRequest,
121
+ context: grpc.ServicerContext,
122
+ ) -> luminarycloud._proto.upload.upload_pb2.UploadWebGeometryReply:
123
+ """Upload a URL referencing an asset on from an online geometry provider
124
+ (e.g., Onshape). We store the reference and and perform no actual file
125
+ transfer until use of the Onshape asset. It is merely for tracking references
126
+ to the object.
127
+ """
128
+ @abc.abstractmethod
129
+ def GetWebGeometryBaseUrl(
130
+ self,
131
+ request: luminarycloud._proto.upload.upload_pb2.GetWebGeometryBaseUrlRequest,
132
+ context: grpc.ServicerContext,
133
+ ) -> luminarycloud._proto.upload.upload_pb2.GetWebGeometryBaseUrlReply:
134
+ """Get the originally associated URL for a given web geometry ID."""
103
135
 
104
136
  def add_UploadServiceServicer_to_server(servicer: UploadServiceServicer, server: grpc.Server) -> None: ...
@@ -16,9 +16,10 @@ _sym_db = _symbol_database.Default()
16
16
  from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
17
17
  from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
18
18
  from luminarycloud._proto.client import simulation_pb2 as proto_dot_client_dot_simulation__pb2
19
+ from luminarycloud._proto.api.v0.luminarycloud.vis import vis_pb2 as proto_dot_api_dot_v0_dot_luminarycloud_dot_vis_dot_vis__pb2
19
20
 
20
21
 
21
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fproto/assistant/assistant.proto\x12\x18luminary.proto.assistant\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1dproto/client/simulation.proto\"9\n\x16GetChatSessionsRequest\x12\r\n\x05scope\x18\x02 \x01(\tJ\x04\x08\x01\x10\x02R\nproject_id\".\n\x17GetChatSessionsResponse\x12\x13\n\x0bsession_ids\x18\x01 \x03(\t\"8\n\x15NewChatSessionRequest\x12\r\n\x05scope\x18\x02 \x01(\tJ\x04\x08\x01\x10\x02R\nproject_id\",\n\x16NewChatSessionResponse\x12\x12\n\nsession_id\x18\x01 \x01(\t\"\x9a\x02\n\x12NotebookOutputItem\x12\x38\n\x06stream\x18\x01 \x01(\x0b\x32&.luminary.proto.assistant.StreamOutputH\x00\x12=\n\x0c\x64isplay_data\x18\x02 \x01(\x0b\x32%.luminary.proto.assistant.DisplayDataH\x00\x12\x41\n\x0e\x65xecute_result\x18\x03 \x01(\x0b\x32\'.luminary.proto.assistant.ExecuteResultH\x00\x12\x36\n\x05\x65rror\x18\x04 \x01(\x0b\x32%.luminary.proto.assistant.ErrorOutputH\x00\x42\x10\n\x0eoutput_content\"V\n\x0cStreamOutput\x12\x38\n\x04name\x18\x01 \x01(\x0e\x32*.luminary.proto.assistant.StreamOutputType\x12\x0c\n\x04text\x18\x02 \x01(\t\"?\n\x0b\x45rrorOutput\x12\r\n\x05\x65name\x18\x01 \x01(\t\x12\x0e\n\x06\x65value\x18\x02 \x01(\t\x12\x11\n\ttraceback\x18\x03 \x03(\t\"}\n\rExecuteResult\x12?\n\x04\x64\x61ta\x18\x01 \x03(\x0b\x32\x31.luminary.proto.assistant.ExecuteResult.DataEntry\x1a+\n\tDataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"y\n\x0b\x44isplayData\x12=\n\x04\x64\x61ta\x18\x01 \x03(\x0b\x32/.luminary.proto.assistant.DisplayData.DataEntry\x1a+\n\tDataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa6\x01\n\x0cNotebookCell\x12\x0f\n\x07\x63\x65ll_id\x18\x01 \x01(\t\x12\x35\n\tcell_type\x18\x02 \x01(\x0e\x32\".luminary.proto.assistant.CellType\x12\x0f\n\x07\x63ontent\x18\x03 \x01(\t\x12=\n\x07outputs\x18\x04 \x03(\x0b\x32,.luminary.proto.assistant.NotebookOutputItem\"b\n\x0fNotebookContext\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x35\n\x05\x63\x65lls\x18\x03 \x03(\x0b\x32&.luminary.proto.assistant.NotebookCell\"=\n\nSourceCode\x12\x10\n\x08language\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x0f\n\x07\x63ontent\x18\x03 \x01(\t\"G\n\x05Image\x12\x14\n\x0cimage_base64\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\"\xdb\x01\n\x0b\x43ontextItem\x12\x45\n\x10notebook_context\x18\x01 \x01(\x0b\x32).luminary.proto.assistant.NotebookContextH\x00\x12;\n\x0bsource_code\x18\x02 \x01(\x0b\x32$.luminary.proto.assistant.SourceCodeH\x00\x12\x0e\n\x04text\x18\x03 \x01(\tH\x00\x12\x30\n\x05image\x18\x04 \x01(\x0b\x32\x1f.luminary.proto.assistant.ImageH\x00\x42\x06\n\x04item\"J\n\x10\x41ssistantContext\x12\x36\n\x07\x63ontext\x18\x01 \x03(\x0b\x32%.luminary.proto.assistant.ContextItem\"\xf6\x01\n\x07Request\x12\x0f\n\x07session\x18\x01 \x01(\t\x12\x0f\n\x07request\x18\x02 \x01(\t\x12\x0b\n\x03\x63md\x18\x03 \x01(\t\x12\x0e\n\x06\x61\x63\x63\x65ss\x18\x04 \x01(\t\x12\r\n\x05scope\x18\x06 \x01(\t\x12=\n\x06source\x18\x07 \x01(\x0e\x32-.luminary.proto.assistant.AssistRequestSource\x12@\n\x07\x63ontext\x18\x08 \x01(\x0b\x32*.luminary.proto.assistant.AssistantContextH\x00\x88\x01\x01\x42\n\n\x08_contextJ\x04\x08\x05\x10\x06R\nproject_id\"\x9e\x01\n\x05Reply\x12\x0f\n\x07session\x18\x01 \x01(\t\x12\x0f\n\x07request\x18\x02 \x01(\t\x12\x0c\n\x04last\x18\x03 \x01(\x08\x12\x32\n\x06\x61\x63tion\x18\x04 \x01(\x0b\x32 .luminary.proto.assistant.ActionH\x00\x12\x12\n\x08response\x18\x05 \x01(\tH\x00\x12\x15\n\x0bplotly_plot\x18\x06 \x01(\tH\x00\x42\x06\n\x04step\"&\n\x06\x41\x63tion\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06params\x18\x02 \x03(\t\"S\n\x07Outcome\x12\x0f\n\x07session\x18\x01 \x01(\t\x12\x0f\n\x07request\x18\x02 \x01(\t\x12\r\n\x03val\x18\x03 \x01(\tH\x00\x12\r\n\x03\x65rr\x18\x04 \x01(\tH\x00\x42\x08\n\x06result\"I\n\x15GetChatHistoryRequest\x12\x0f\n\x07session\x18\x01 \x01(\t\x12\r\n\x05scope\x18\x03 \x01(\tJ\x04\x08\x02\x10\x03R\nproject_id\"1\n\x10\x43hatHistoryEntry\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0f\n\x07\x63ontent\x18\x02 \x01(\t\"U\n\x16GetChatHistoryResponse\x12;\n\x07\x65ntries\x18\x01 \x03(\x0b\x32*.luminary.proto.assistant.ChatHistoryEntry\"g\n\x1aSimulationToSdkCodeRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0f\n\x07session\x18\x02 \x01(\t\x12\r\n\x05token\x18\x03 \x01(\t\x12\x15\n\rsimulation_id\x18\x04 \x01(\t\"/\n\x1bSimulationToSdkCodeResponse\x12\x10\n\x08sdk_code\x18\x01 \x01(\t\"`\n\x0eMCPToolRequest\x12\x0f\n\x07session\x18\x01 \x01(\t\x12\x11\n\ttool_name\x18\x02 \x01(\t\x12*\n\ttool_args\x18\x03 \x01(\x0b\x32\x17.google.protobuf.Struct\"(\n\x0fMCPToolResponse\x12\x15\n\rtool_response\x18\x01 \x01(\t*5\n\x13\x41ssistRequestSource\x12\r\n\tWEBAPP_UI\x10\x00\x12\x0f\n\x0bNOTEBOOK_UI\x10\x01*+\n\x08\x43\x65llType\x12\x08\n\x04\x43ODE\x10\x00\x12\x0c\n\x08MARKDOWN\x10\x01\x12\x07\n\x03RAW\x10\x02**\n\x10StreamOutputType\x12\n\n\x06STDOUT\x10\x00\x12\n\n\x06STDERR\x10\x01\x32\xfd\x05\n\tAssistant\x12x\n\x0fGetChatSessions\x12\x30.luminary.proto.assistant.GetChatSessionsRequest\x1a\x31.luminary.proto.assistant.GetChatSessionsResponse\"\x00\x12u\n\x0eNewChatSession\x12/.luminary.proto.assistant.NewChatSessionRequest\x1a\x30.luminary.proto.assistant.NewChatSessionResponse\"\x00\x12u\n\x0eGetChatHistory\x12/.luminary.proto.assistant.GetChatHistoryRequest\x1a\x30.luminary.proto.assistant.GetChatHistoryResponse\"\x00\x12P\n\x06\x41ssist\x12!.luminary.proto.assistant.Request\x1a\x1f.luminary.proto.assistant.Reply\"\x00\x30\x01\x12M\n\x0e\x41ssistCallback\x12!.luminary.proto.assistant.Outcome\x1a\x16.google.protobuf.Empty\"\x00\x12\x84\x01\n\x13SimulationToSdkCode\x12\x34.luminary.proto.assistant.SimulationToSdkCodeRequest\x1a\x35.luminary.proto.assistant.SimulationToSdkCodeResponse\"\x00\x12`\n\x07MCPTool\x12(.luminary.proto.assistant.MCPToolRequest\x1a).luminary.proto.assistant.MCPToolResponse\"\x00\x42(Z&luminarycloud.com/core/proto/assistantb\x06proto3')
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1fproto/assistant/assistant.proto\x12\x18luminary.proto.assistant\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1dproto/client/simulation.proto\x1a(proto/api/v0/luminarycloud/vis/vis.proto\"9\n\x16GetChatSessionsRequest\x12\r\n\x05scope\x18\x02 \x01(\tJ\x04\x08\x01\x10\x02R\nproject_id\".\n\x17GetChatSessionsResponse\x12\x13\n\x0bsession_ids\x18\x01 \x03(\t\"8\n\x15NewChatSessionRequest\x12\r\n\x05scope\x18\x02 \x01(\tJ\x04\x08\x01\x10\x02R\nproject_id\",\n\x16NewChatSessionResponse\x12\x12\n\nsession_id\x18\x01 \x01(\t\"\x9a\x02\n\x12NotebookOutputItem\x12\x38\n\x06stream\x18\x01 \x01(\x0b\x32&.luminary.proto.assistant.StreamOutputH\x00\x12=\n\x0c\x64isplay_data\x18\x02 \x01(\x0b\x32%.luminary.proto.assistant.DisplayDataH\x00\x12\x41\n\x0e\x65xecute_result\x18\x03 \x01(\x0b\x32\'.luminary.proto.assistant.ExecuteResultH\x00\x12\x36\n\x05\x65rror\x18\x04 \x01(\x0b\x32%.luminary.proto.assistant.ErrorOutputH\x00\x42\x10\n\x0eoutput_content\"V\n\x0cStreamOutput\x12\x38\n\x04name\x18\x01 \x01(\x0e\x32*.luminary.proto.assistant.StreamOutputType\x12\x0c\n\x04text\x18\x02 \x01(\t\"?\n\x0b\x45rrorOutput\x12\r\n\x05\x65name\x18\x01 \x01(\t\x12\x0e\n\x06\x65value\x18\x02 \x01(\t\x12\x11\n\ttraceback\x18\x03 \x03(\t\"}\n\rExecuteResult\x12?\n\x04\x64\x61ta\x18\x01 \x03(\x0b\x32\x31.luminary.proto.assistant.ExecuteResult.DataEntry\x1a+\n\tDataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"y\n\x0b\x44isplayData\x12=\n\x04\x64\x61ta\x18\x01 \x03(\x0b\x32/.luminary.proto.assistant.DisplayData.DataEntry\x1a+\n\tDataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xa6\x01\n\x0cNotebookCell\x12\x0f\n\x07\x63\x65ll_id\x18\x01 \x01(\t\x12\x35\n\tcell_type\x18\x02 \x01(\x0e\x32\".luminary.proto.assistant.CellType\x12\x0f\n\x07\x63ontent\x18\x03 \x01(\t\x12=\n\x07outputs\x18\x04 \x03(\x0b\x32,.luminary.proto.assistant.NotebookOutputItem\"b\n\x0fNotebookContext\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\x35\n\x05\x63\x65lls\x18\x03 \x03(\x0b\x32&.luminary.proto.assistant.NotebookCell\"=\n\nSourceCode\x12\x10\n\x08language\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\x12\x0f\n\x07\x63ontent\x18\x03 \x01(\t\"G\n\x05Image\x12\x14\n\x0cimage_base64\x18\x01 \x01(\t\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_description\"\xdb\x01\n\x0b\x43ontextItem\x12\x45\n\x10notebook_context\x18\x01 \x01(\x0b\x32).luminary.proto.assistant.NotebookContextH\x00\x12;\n\x0bsource_code\x18\x02 \x01(\x0b\x32$.luminary.proto.assistant.SourceCodeH\x00\x12\x0e\n\x04text\x18\x03 \x01(\tH\x00\x12\x30\n\x05image\x18\x04 \x01(\x0b\x32\x1f.luminary.proto.assistant.ImageH\x00\x42\x06\n\x04item\"J\n\x10\x41ssistantContext\x12\x36\n\x07\x63ontext\x18\x01 \x03(\x0b\x32%.luminary.proto.assistant.ContextItem\"\xf6\x01\n\x07Request\x12\x0f\n\x07session\x18\x01 \x01(\t\x12\x0f\n\x07request\x18\x02 \x01(\t\x12\x0b\n\x03\x63md\x18\x03 \x01(\t\x12\x0e\n\x06\x61\x63\x63\x65ss\x18\x04 \x01(\t\x12\r\n\x05scope\x18\x06 \x01(\t\x12=\n\x06source\x18\x07 \x01(\x0e\x32-.luminary.proto.assistant.AssistRequestSource\x12@\n\x07\x63ontext\x18\x08 \x01(\x0b\x32*.luminary.proto.assistant.AssistantContextH\x00\x88\x01\x01\x42\n\n\x08_contextJ\x04\x08\x05\x10\x06R\nproject_id\"\x9e\x01\n\x05Reply\x12\x0f\n\x07session\x18\x01 \x01(\t\x12\x0f\n\x07request\x18\x02 \x01(\t\x12\x0c\n\x04last\x18\x03 \x01(\x08\x12\x32\n\x06\x61\x63tion\x18\x04 \x01(\x0b\x32 .luminary.proto.assistant.ActionH\x00\x12\x12\n\x08response\x18\x05 \x01(\tH\x00\x12\x15\n\x0bplotly_plot\x18\x06 \x01(\tH\x00\x42\x06\n\x04step\"&\n\x06\x41\x63tion\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x0e\n\x06params\x18\x02 \x03(\t\"S\n\x07Outcome\x12\x0f\n\x07session\x18\x01 \x01(\t\x12\x0f\n\x07request\x18\x02 \x01(\t\x12\r\n\x03val\x18\x03 \x01(\tH\x00\x12\r\n\x03\x65rr\x18\x04 \x01(\tH\x00\x42\x08\n\x06result\"I\n\x15GetChatHistoryRequest\x12\x0f\n\x07session\x18\x01 \x01(\t\x12\r\n\x05scope\x18\x03 \x01(\tJ\x04\x08\x02\x10\x03R\nproject_id\"1\n\x10\x43hatHistoryEntry\x12\x0c\n\x04type\x18\x01 \x01(\t\x12\x0f\n\x07\x63ontent\x18\x02 \x01(\t\"U\n\x16GetChatHistoryResponse\x12;\n\x07\x65ntries\x18\x01 \x03(\x0b\x32*.luminary.proto.assistant.ChatHistoryEntry\"g\n\x1aSimulationToSdkCodeRequest\x12\x12\n\nproject_id\x18\x01 \x01(\t\x12\x0f\n\x07session\x18\x02 \x01(\t\x12\r\n\x05token\x18\x03 \x01(\t\x12\x15\n\rsimulation_id\x18\x04 \x01(\t\"/\n\x1bSimulationToSdkCodeResponse\x12\x10\n\x08sdk_code\x18\x01 \x01(\t\"y\n\x13VisToSdkCodeRequest\x12\x42\n\x04spec\x18\x01 \x01(\x0b\x32\x34.luminary.proto.api.v0.luminarycloud.vis.ExtractSpec\x12\x0f\n\x07session\x18\x02 \x01(\t\x12\r\n\x05token\x18\x03 \x01(\t\"(\n\x14VisToSdkCodeResponse\x12\x10\n\x08sdk_code\x18\x01 \x01(\t*5\n\x13\x41ssistRequestSource\x12\r\n\tWEBAPP_UI\x10\x00\x12\x0f\n\x0bNOTEBOOK_UI\x10\x01*+\n\x08\x43\x65llType\x12\x08\n\x04\x43ODE\x10\x00\x12\x0c\n\x08MARKDOWN\x10\x01\x12\x07\n\x03RAW\x10\x02**\n\x10StreamOutputType\x12\n\n\x06STDOUT\x10\x00\x12\n\n\x06STDERR\x10\x01\x32\x8c\x06\n\tAssistant\x12x\n\x0fGetChatSessions\x12\x30.luminary.proto.assistant.GetChatSessionsRequest\x1a\x31.luminary.proto.assistant.GetChatSessionsResponse\"\x00\x12u\n\x0eNewChatSession\x12/.luminary.proto.assistant.NewChatSessionRequest\x1a\x30.luminary.proto.assistant.NewChatSessionResponse\"\x00\x12u\n\x0eGetChatHistory\x12/.luminary.proto.assistant.GetChatHistoryRequest\x1a\x30.luminary.proto.assistant.GetChatHistoryResponse\"\x00\x12P\n\x06\x41ssist\x12!.luminary.proto.assistant.Request\x1a\x1f.luminary.proto.assistant.Reply\"\x00\x30\x01\x12M\n\x0e\x41ssistCallback\x12!.luminary.proto.assistant.Outcome\x1a\x16.google.protobuf.Empty\"\x00\x12\x84\x01\n\x13SimulationToSdkCode\x12\x34.luminary.proto.assistant.SimulationToSdkCodeRequest\x1a\x35.luminary.proto.assistant.SimulationToSdkCodeResponse\"\x00\x12o\n\x0cVisToSdkCode\x12-.luminary.proto.assistant.VisToSdkCodeRequest\x1a..luminary.proto.assistant.VisToSdkCodeResponse\"\x00\x42(Z&luminarycloud.com/core/proto/assistantb\x06proto3')
22
23
 
23
24
  _ASSISTREQUESTSOURCE = DESCRIPTOR.enum_types_by_name['AssistRequestSource']
24
25
  AssistRequestSource = enum_type_wrapper.EnumTypeWrapper(_ASSISTREQUESTSOURCE)
@@ -61,8 +62,8 @@ _CHATHISTORYENTRY = DESCRIPTOR.message_types_by_name['ChatHistoryEntry']
61
62
  _GETCHATHISTORYRESPONSE = DESCRIPTOR.message_types_by_name['GetChatHistoryResponse']
62
63
  _SIMULATIONTOSDKCODEREQUEST = DESCRIPTOR.message_types_by_name['SimulationToSdkCodeRequest']
63
64
  _SIMULATIONTOSDKCODERESPONSE = DESCRIPTOR.message_types_by_name['SimulationToSdkCodeResponse']
64
- _MCPTOOLREQUEST = DESCRIPTOR.message_types_by_name['MCPToolRequest']
65
- _MCPTOOLRESPONSE = DESCRIPTOR.message_types_by_name['MCPToolResponse']
65
+ _VISTOSDKCODEREQUEST = DESCRIPTOR.message_types_by_name['VisToSdkCodeRequest']
66
+ _VISTOSDKCODERESPONSE = DESCRIPTOR.message_types_by_name['VisToSdkCodeResponse']
66
67
  GetChatSessionsRequest = _reflection.GeneratedProtocolMessageType('GetChatSessionsRequest', (_message.Message,), {
67
68
  'DESCRIPTOR' : _GETCHATSESSIONSREQUEST,
68
69
  '__module__' : 'proto.assistant.assistant_pb2'
@@ -247,19 +248,19 @@ SimulationToSdkCodeResponse = _reflection.GeneratedProtocolMessageType('Simulati
247
248
  })
248
249
  _sym_db.RegisterMessage(SimulationToSdkCodeResponse)
249
250
 
250
- MCPToolRequest = _reflection.GeneratedProtocolMessageType('MCPToolRequest', (_message.Message,), {
251
- 'DESCRIPTOR' : _MCPTOOLREQUEST,
251
+ VisToSdkCodeRequest = _reflection.GeneratedProtocolMessageType('VisToSdkCodeRequest', (_message.Message,), {
252
+ 'DESCRIPTOR' : _VISTOSDKCODEREQUEST,
252
253
  '__module__' : 'proto.assistant.assistant_pb2'
253
- # @@protoc_insertion_point(class_scope:luminary.proto.assistant.MCPToolRequest)
254
+ # @@protoc_insertion_point(class_scope:luminary.proto.assistant.VisToSdkCodeRequest)
254
255
  })
255
- _sym_db.RegisterMessage(MCPToolRequest)
256
+ _sym_db.RegisterMessage(VisToSdkCodeRequest)
256
257
 
257
- MCPToolResponse = _reflection.GeneratedProtocolMessageType('MCPToolResponse', (_message.Message,), {
258
- 'DESCRIPTOR' : _MCPTOOLRESPONSE,
258
+ VisToSdkCodeResponse = _reflection.GeneratedProtocolMessageType('VisToSdkCodeResponse', (_message.Message,), {
259
+ 'DESCRIPTOR' : _VISTOSDKCODERESPONSE,
259
260
  '__module__' : 'proto.assistant.assistant_pb2'
260
- # @@protoc_insertion_point(class_scope:luminary.proto.assistant.MCPToolResponse)
261
+ # @@protoc_insertion_point(class_scope:luminary.proto.assistant.VisToSdkCodeResponse)
261
262
  })
262
- _sym_db.RegisterMessage(MCPToolResponse)
263
+ _sym_db.RegisterMessage(VisToSdkCodeResponse)
263
264
 
264
265
  _ASSISTANT = DESCRIPTOR.services_by_name['Assistant']
265
266
  if _descriptor._USE_C_DESCRIPTORS == False:
@@ -270,68 +271,68 @@ if _descriptor._USE_C_DESCRIPTORS == False:
270
271
  _EXECUTERESULT_DATAENTRY._serialized_options = b'8\001'
271
272
  _DISPLAYDATA_DATAENTRY._options = None
272
273
  _DISPLAYDATA_DATAENTRY._serialized_options = b'8\001'
273
- _ASSISTREQUESTSOURCE._serialized_start=2795
274
- _ASSISTREQUESTSOURCE._serialized_end=2848
275
- _CELLTYPE._serialized_start=2850
276
- _CELLTYPE._serialized_end=2893
277
- _STREAMOUTPUTTYPE._serialized_start=2895
278
- _STREAMOUTPUTTYPE._serialized_end=2937
279
- _GETCHATSESSIONSREQUEST._serialized_start=151
280
- _GETCHATSESSIONSREQUEST._serialized_end=208
281
- _GETCHATSESSIONSRESPONSE._serialized_start=210
282
- _GETCHATSESSIONSRESPONSE._serialized_end=256
283
- _NEWCHATSESSIONREQUEST._serialized_start=258
284
- _NEWCHATSESSIONREQUEST._serialized_end=314
285
- _NEWCHATSESSIONRESPONSE._serialized_start=316
286
- _NEWCHATSESSIONRESPONSE._serialized_end=360
287
- _NOTEBOOKOUTPUTITEM._serialized_start=363
288
- _NOTEBOOKOUTPUTITEM._serialized_end=645
289
- _STREAMOUTPUT._serialized_start=647
290
- _STREAMOUTPUT._serialized_end=733
291
- _ERROROUTPUT._serialized_start=735
292
- _ERROROUTPUT._serialized_end=798
293
- _EXECUTERESULT._serialized_start=800
294
- _EXECUTERESULT._serialized_end=925
295
- _EXECUTERESULT_DATAENTRY._serialized_start=882
296
- _EXECUTERESULT_DATAENTRY._serialized_end=925
297
- _DISPLAYDATA._serialized_start=927
298
- _DISPLAYDATA._serialized_end=1048
299
- _DISPLAYDATA_DATAENTRY._serialized_start=882
300
- _DISPLAYDATA_DATAENTRY._serialized_end=925
301
- _NOTEBOOKCELL._serialized_start=1051
302
- _NOTEBOOKCELL._serialized_end=1217
303
- _NOTEBOOKCONTEXT._serialized_start=1219
304
- _NOTEBOOKCONTEXT._serialized_end=1317
305
- _SOURCECODE._serialized_start=1319
306
- _SOURCECODE._serialized_end=1380
307
- _IMAGE._serialized_start=1382
308
- _IMAGE._serialized_end=1453
309
- _CONTEXTITEM._serialized_start=1456
310
- _CONTEXTITEM._serialized_end=1675
311
- _ASSISTANTCONTEXT._serialized_start=1677
312
- _ASSISTANTCONTEXT._serialized_end=1751
313
- _REQUEST._serialized_start=1754
314
- _REQUEST._serialized_end=2000
315
- _REPLY._serialized_start=2003
316
- _REPLY._serialized_end=2161
317
- _ACTION._serialized_start=2163
318
- _ACTION._serialized_end=2201
319
- _OUTCOME._serialized_start=2203
320
- _OUTCOME._serialized_end=2286
321
- _GETCHATHISTORYREQUEST._serialized_start=2288
322
- _GETCHATHISTORYREQUEST._serialized_end=2361
323
- _CHATHISTORYENTRY._serialized_start=2363
324
- _CHATHISTORYENTRY._serialized_end=2412
325
- _GETCHATHISTORYRESPONSE._serialized_start=2414
326
- _GETCHATHISTORYRESPONSE._serialized_end=2499
327
- _SIMULATIONTOSDKCODEREQUEST._serialized_start=2501
328
- _SIMULATIONTOSDKCODEREQUEST._serialized_end=2604
329
- _SIMULATIONTOSDKCODERESPONSE._serialized_start=2606
330
- _SIMULATIONTOSDKCODERESPONSE._serialized_end=2653
331
- _MCPTOOLREQUEST._serialized_start=2655
332
- _MCPTOOLREQUEST._serialized_end=2751
333
- _MCPTOOLRESPONSE._serialized_start=2753
334
- _MCPTOOLRESPONSE._serialized_end=2793
335
- _ASSISTANT._serialized_start=2940
336
- _ASSISTANT._serialized_end=3705
274
+ _ASSISTREQUESTSOURCE._serialized_start=2862
275
+ _ASSISTREQUESTSOURCE._serialized_end=2915
276
+ _CELLTYPE._serialized_start=2917
277
+ _CELLTYPE._serialized_end=2960
278
+ _STREAMOUTPUTTYPE._serialized_start=2962
279
+ _STREAMOUTPUTTYPE._serialized_end=3004
280
+ _GETCHATSESSIONSREQUEST._serialized_start=193
281
+ _GETCHATSESSIONSREQUEST._serialized_end=250
282
+ _GETCHATSESSIONSRESPONSE._serialized_start=252
283
+ _GETCHATSESSIONSRESPONSE._serialized_end=298
284
+ _NEWCHATSESSIONREQUEST._serialized_start=300
285
+ _NEWCHATSESSIONREQUEST._serialized_end=356
286
+ _NEWCHATSESSIONRESPONSE._serialized_start=358
287
+ _NEWCHATSESSIONRESPONSE._serialized_end=402
288
+ _NOTEBOOKOUTPUTITEM._serialized_start=405
289
+ _NOTEBOOKOUTPUTITEM._serialized_end=687
290
+ _STREAMOUTPUT._serialized_start=689
291
+ _STREAMOUTPUT._serialized_end=775
292
+ _ERROROUTPUT._serialized_start=777
293
+ _ERROROUTPUT._serialized_end=840
294
+ _EXECUTERESULT._serialized_start=842
295
+ _EXECUTERESULT._serialized_end=967
296
+ _EXECUTERESULT_DATAENTRY._serialized_start=924
297
+ _EXECUTERESULT_DATAENTRY._serialized_end=967
298
+ _DISPLAYDATA._serialized_start=969
299
+ _DISPLAYDATA._serialized_end=1090
300
+ _DISPLAYDATA_DATAENTRY._serialized_start=924
301
+ _DISPLAYDATA_DATAENTRY._serialized_end=967
302
+ _NOTEBOOKCELL._serialized_start=1093
303
+ _NOTEBOOKCELL._serialized_end=1259
304
+ _NOTEBOOKCONTEXT._serialized_start=1261
305
+ _NOTEBOOKCONTEXT._serialized_end=1359
306
+ _SOURCECODE._serialized_start=1361
307
+ _SOURCECODE._serialized_end=1422
308
+ _IMAGE._serialized_start=1424
309
+ _IMAGE._serialized_end=1495
310
+ _CONTEXTITEM._serialized_start=1498
311
+ _CONTEXTITEM._serialized_end=1717
312
+ _ASSISTANTCONTEXT._serialized_start=1719
313
+ _ASSISTANTCONTEXT._serialized_end=1793
314
+ _REQUEST._serialized_start=1796
315
+ _REQUEST._serialized_end=2042
316
+ _REPLY._serialized_start=2045
317
+ _REPLY._serialized_end=2203
318
+ _ACTION._serialized_start=2205
319
+ _ACTION._serialized_end=2243
320
+ _OUTCOME._serialized_start=2245
321
+ _OUTCOME._serialized_end=2328
322
+ _GETCHATHISTORYREQUEST._serialized_start=2330
323
+ _GETCHATHISTORYREQUEST._serialized_end=2403
324
+ _CHATHISTORYENTRY._serialized_start=2405
325
+ _CHATHISTORYENTRY._serialized_end=2454
326
+ _GETCHATHISTORYRESPONSE._serialized_start=2456
327
+ _GETCHATHISTORYRESPONSE._serialized_end=2541
328
+ _SIMULATIONTOSDKCODEREQUEST._serialized_start=2543
329
+ _SIMULATIONTOSDKCODEREQUEST._serialized_end=2646
330
+ _SIMULATIONTOSDKCODERESPONSE._serialized_start=2648
331
+ _SIMULATIONTOSDKCODERESPONSE._serialized_end=2695
332
+ _VISTOSDKCODEREQUEST._serialized_start=2697
333
+ _VISTOSDKCODEREQUEST._serialized_end=2818
334
+ _VISTOSDKCODERESPONSE._serialized_start=2820
335
+ _VISTOSDKCODERESPONSE._serialized_end=2860
336
+ _ASSISTANT._serialized_start=3007
337
+ _ASSISTANT._serialized_end=3787
337
338
  # @@protoc_insertion_point(module_scope)
@@ -8,7 +8,7 @@ import google.protobuf.descriptor
8
8
  import google.protobuf.internal.containers
9
9
  import google.protobuf.internal.enum_type_wrapper
10
10
  import google.protobuf.message
11
- import google.protobuf.struct_pb2
11
+ import luminarycloud._proto.api.v0.luminarycloud.vis.vis_pb2
12
12
  import sys
13
13
  import typing
14
14
 
@@ -661,38 +661,41 @@ class SimulationToSdkCodeResponse(google.protobuf.message.Message):
661
661
 
662
662
  global___SimulationToSdkCodeResponse = SimulationToSdkCodeResponse
663
663
 
664
- class MCPToolRequest(google.protobuf.message.Message):
664
+ class VisToSdkCodeRequest(google.protobuf.message.Message):
665
665
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
666
666
 
667
+ SPEC_FIELD_NUMBER: builtins.int
667
668
  SESSION_FIELD_NUMBER: builtins.int
668
- TOOL_NAME_FIELD_NUMBER: builtins.int
669
- TOOL_ARGS_FIELD_NUMBER: builtins.int
670
- session: builtins.str
671
- tool_name: builtins.str
669
+ TOKEN_FIELD_NUMBER: builtins.int
672
670
  @property
673
- def tool_args(self) -> google.protobuf.struct_pb2.Struct: ...
671
+ def spec(self) -> luminarycloud._proto.api.v0.luminarycloud.vis.vis_pb2.ExtractSpec:
672
+ """The extract spec that defines the vis state."""
673
+ session: builtins.str
674
+ """Id of the long lived session, an opaque string set by initiator"""
675
+ token: builtins.str
676
+ """The session token for assistant to act on behalf of the user"""
674
677
  def __init__(
675
678
  self,
676
679
  *,
680
+ spec: luminarycloud._proto.api.v0.luminarycloud.vis.vis_pb2.ExtractSpec | None = ...,
677
681
  session: builtins.str = ...,
678
- tool_name: builtins.str = ...,
679
- tool_args: google.protobuf.struct_pb2.Struct | None = ...,
682
+ token: builtins.str = ...,
680
683
  ) -> None: ...
681
- def HasField(self, field_name: typing_extensions.Literal["tool_args", b"tool_args"]) -> builtins.bool: ...
682
- def ClearField(self, field_name: typing_extensions.Literal["session", b"session", "tool_args", b"tool_args", "tool_name", b"tool_name"]) -> None: ...
684
+ def HasField(self, field_name: typing_extensions.Literal["spec", b"spec"]) -> builtins.bool: ...
685
+ def ClearField(self, field_name: typing_extensions.Literal["session", b"session", "spec", b"spec", "token", b"token"]) -> None: ...
683
686
 
684
- global___MCPToolRequest = MCPToolRequest
687
+ global___VisToSdkCodeRequest = VisToSdkCodeRequest
685
688
 
686
- class MCPToolResponse(google.protobuf.message.Message):
689
+ class VisToSdkCodeResponse(google.protobuf.message.Message):
687
690
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
688
691
 
689
- TOOL_RESPONSE_FIELD_NUMBER: builtins.int
690
- tool_response: builtins.str
692
+ SDK_CODE_FIELD_NUMBER: builtins.int
693
+ sdk_code: builtins.str
691
694
  def __init__(
692
695
  self,
693
696
  *,
694
- tool_response: builtins.str = ...,
697
+ sdk_code: builtins.str = ...,
695
698
  ) -> None: ...
696
- def ClearField(self, field_name: typing_extensions.Literal["tool_response", b"tool_response"]) -> None: ...
699
+ def ClearField(self, field_name: typing_extensions.Literal["sdk_code", b"sdk_code"]) -> None: ...
697
700
 
698
- global___MCPToolResponse = MCPToolResponse
701
+ global___VisToSdkCodeResponse = VisToSdkCodeResponse
@@ -46,10 +46,10 @@ class AssistantStub(object):
46
46
  request_serializer=proto_dot_assistant_dot_assistant__pb2.SimulationToSdkCodeRequest.SerializeToString,
47
47
  response_deserializer=proto_dot_assistant_dot_assistant__pb2.SimulationToSdkCodeResponse.FromString,
48
48
  )
49
- self.MCPTool = channel.unary_unary(
50
- '/luminary.proto.assistant.Assistant/MCPTool',
51
- request_serializer=proto_dot_assistant_dot_assistant__pb2.MCPToolRequest.SerializeToString,
52
- response_deserializer=proto_dot_assistant_dot_assistant__pb2.MCPToolResponse.FromString,
49
+ self.VisToSdkCode = channel.unary_unary(
50
+ '/luminary.proto.assistant.Assistant/VisToSdkCode',
51
+ request_serializer=proto_dot_assistant_dot_assistant__pb2.VisToSdkCodeRequest.SerializeToString,
52
+ response_deserializer=proto_dot_assistant_dot_assistant__pb2.VisToSdkCodeResponse.FromString,
53
53
  )
54
54
 
55
55
 
@@ -94,8 +94,8 @@ class AssistantServicer(object):
94
94
  context.set_details('Method not implemented!')
95
95
  raise NotImplementedError('Method not implemented!')
96
96
 
97
- def MCPTool(self, request, context):
98
- """MCP tools and prompts to be accessed by the MCP server
97
+ def VisToSdkCode(self, request, context):
98
+ """Converts an visualization extract spec into the equivalent SDK code.
99
99
  """
100
100
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
101
101
  context.set_details('Method not implemented!')
@@ -134,10 +134,10 @@ def add_AssistantServicer_to_server(servicer, server):
134
134
  request_deserializer=proto_dot_assistant_dot_assistant__pb2.SimulationToSdkCodeRequest.FromString,
135
135
  response_serializer=proto_dot_assistant_dot_assistant__pb2.SimulationToSdkCodeResponse.SerializeToString,
136
136
  ),
137
- 'MCPTool': grpc.unary_unary_rpc_method_handler(
138
- servicer.MCPTool,
139
- request_deserializer=proto_dot_assistant_dot_assistant__pb2.MCPToolRequest.FromString,
140
- response_serializer=proto_dot_assistant_dot_assistant__pb2.MCPToolResponse.SerializeToString,
137
+ 'VisToSdkCode': grpc.unary_unary_rpc_method_handler(
138
+ servicer.VisToSdkCode,
139
+ request_deserializer=proto_dot_assistant_dot_assistant__pb2.VisToSdkCodeRequest.FromString,
140
+ response_serializer=proto_dot_assistant_dot_assistant__pb2.VisToSdkCodeResponse.SerializeToString,
141
141
  ),
142
142
  }
143
143
  generic_handler = grpc.method_handlers_generic_handler(
@@ -253,7 +253,7 @@ class Assistant(object):
253
253
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
254
254
 
255
255
  @staticmethod
256
- def MCPTool(request,
256
+ def VisToSdkCode(request,
257
257
  target,
258
258
  options=(),
259
259
  channel_credentials=None,
@@ -263,8 +263,8 @@ class Assistant(object):
263
263
  wait_for_ready=None,
264
264
  timeout=None,
265
265
  metadata=None):
266
- return grpc.experimental.unary_unary(request, target, '/luminary.proto.assistant.Assistant/MCPTool',
267
- proto_dot_assistant_dot_assistant__pb2.MCPToolRequest.SerializeToString,
268
- proto_dot_assistant_dot_assistant__pb2.MCPToolResponse.FromString,
266
+ return grpc.experimental.unary_unary(request, target, '/luminary.proto.assistant.Assistant/VisToSdkCode',
267
+ proto_dot_assistant_dot_assistant__pb2.VisToSdkCodeRequest.SerializeToString,
268
+ proto_dot_assistant_dot_assistant__pb2.VisToSdkCodeResponse.FromString,
269
269
  options, channel_credentials,
270
270
  insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -37,11 +37,11 @@ class AssistantStub:
37
37
  luminarycloud._proto.assistant.assistant_pb2.SimulationToSdkCodeResponse,
38
38
  ]
39
39
  """Converts a given SimulationParam proto into the equivalent SDK code."""
40
- MCPTool: grpc.UnaryUnaryMultiCallable[
41
- luminarycloud._proto.assistant.assistant_pb2.MCPToolRequest,
42
- luminarycloud._proto.assistant.assistant_pb2.MCPToolResponse,
40
+ VisToSdkCode: grpc.UnaryUnaryMultiCallable[
41
+ luminarycloud._proto.assistant.assistant_pb2.VisToSdkCodeRequest,
42
+ luminarycloud._proto.assistant.assistant_pb2.VisToSdkCodeResponse,
43
43
  ]
44
- """MCP tools and prompts to be accessed by the MCP server"""
44
+ """Converts an visualization extract spec into the equivalent SDK code."""
45
45
 
46
46
  class AssistantServicer(metaclass=abc.ABCMeta):
47
47
  """the assistant service implemented by backend"""
@@ -84,11 +84,11 @@ class AssistantServicer(metaclass=abc.ABCMeta):
84
84
  ) -> luminarycloud._proto.assistant.assistant_pb2.SimulationToSdkCodeResponse:
85
85
  """Converts a given SimulationParam proto into the equivalent SDK code."""
86
86
  @abc.abstractmethod
87
- def MCPTool(
87
+ def VisToSdkCode(
88
88
  self,
89
- request: luminarycloud._proto.assistant.assistant_pb2.MCPToolRequest,
89
+ request: luminarycloud._proto.assistant.assistant_pb2.VisToSdkCodeRequest,
90
90
  context: grpc.ServicerContext,
91
- ) -> luminarycloud._proto.assistant.assistant_pb2.MCPToolResponse:
92
- """MCP tools and prompts to be accessed by the MCP server"""
91
+ ) -> luminarycloud._proto.assistant.assistant_pb2.VisToSdkCodeResponse:
92
+ """Converts an visualization extract spec into the equivalent SDK code."""
93
93
 
94
94
  def add_AssistantServicer_to_server(servicer: AssistantServicer, server: grpc.Server) -> None: ...
@@ -19,7 +19,7 @@ from luminarycloud._proto.quantity import quantity_pb2 as proto_dot_quantity_dot
19
19
  from luminarycloud._proto.lcstatus import lcstatus_pb2 as proto_dot_lcstatus_dot_lcstatus__pb2
20
20
 
21
21
 
22
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15proto/base/base.proto\x12\x13luminary.proto.base\x1a google/protobuf/descriptor.proto\x1a\x19google/protobuf/any.proto\x1a\x1dproto/quantity/quantity.proto\x1a\x1dproto/lcstatus/lcstatus.proto\"/\n\x08\x43hecksum\x12\x10\n\x06sha256\x18\x01 \x01(\x0cH\x00\x42\x0b\n\talgorithmJ\x04\x08\x02\x10\x03\"N\n\x06Status\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0f\n\x07message\x18\x02 \x01(\t\x12%\n\x07\x64\x65tails\x18\x03 \x03(\x0b\x32\x14.google.protobuf.Any\"x\n\rStatusPayload\x12-\n\x07subcode\x18\x01 \x01(\x0e\x32\x1c.luminary.proto.base.Subcode\x12\x38\n\x06\x64\x65tail\x18\x03 \x03(\x0b\x32(.luminary.proto.base.StatusPayloadDetail\"5\n\x13StatusPayloadDetail\x12\x0f\n\x07message\x18\x10 \x01(\t\x12\r\n\x05where\x18\x11 \x01(\t\"\xb3\x01\n\tJobStatus\x12/\n\x03typ\x18\x01 \x01(\x0e\x32\".luminary.proto.base.JobStatusType\x12-\n\x06status\x18\x02 \x01(\x0b\x32\x1b.luminary.proto.base.StatusH\x00\x12\x35\n\x08lcstatus\x18\x03 \x01(\x0b\x32!.luminary.proto.lcstatus.LCStatusH\x00\x42\x0f\n\rfailed_reason\"\x92\x01\n\tAdVector3\x12+\n\x01x\x18\x01 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\x12+\n\x01y\x18\x02 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\x12+\n\x01z\x18\x03 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\"*\n\x07Vector3\x12\t\n\x01x\x18\x01 \x01(\x01\x12\t\n\x01y\x18\x02 \x01(\x01\x12\t\n\x01z\x18\x03 \x01(\x01\"-\n\nIntVector3\x12\t\n\x01x\x18\x01 \x01(\x03\x12\t\n\x01y\x18\x02 \x01(\x03\x12\t\n\x01z\x18\x03 \x01(\x03\"\x84\x01\n\x07Matrix3\x12\'\n\x01\x61\x18\x01 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\'\n\x01\x62\x18\x02 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\'\n\x01\x63\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\"C\n\x10\x46irstOrderAdType\x12\r\n\x05value\x18\x01 \x01(\x01\x12\x0f\n\x07tangent\x18\x02 \x03(\x01\x12\x0f\n\x07\x61\x64joint\x18\x03 \x03(\x01\"\xb9\x01\n\x11SecondOrderAdType\x12\x34\n\x05value\x18\x01 \x01(\x0b\x32%.luminary.proto.base.FirstOrderAdType\x12\x36\n\x07tangent\x18\x02 \x03(\x0b\x32%.luminary.proto.base.FirstOrderAdType\x12\x36\n\x07\x61\x64joint\x18\x03 \x03(\x0b\x32%.luminary.proto.base.FirstOrderAdType\"3\n\x0e\x45xpressionType\x12\r\n\x05value\x18\x01 \x01(\x01\x12\x12\n\nexpression\x18\x02 \x01(\t\"\xad\x02\n\x0b\x41\x64\x46loatType\x12\x0f\n\x05value\x18\x01 \x01(\x01H\x00\x12<\n\x0b\x66irst_order\x18\x02 \x01(\x0b\x32%.luminary.proto.base.FirstOrderAdTypeH\x00\x12>\n\x0csecond_order\x18\x03 \x01(\x0b\x32&.luminary.proto.base.SecondOrderAdTypeH\x00\x12\x37\n\x08variable\x18\x05 \x01(\x0b\x32#.luminary.proto.base.ExpressionTypeH\x00\x12>\n\rquantity_type\x18\x04 \x01(\x0e\x32%.luminary.proto.quantity.QuantityTypeH\x01\x42\n\n\x08\x61\x64_typesB\n\n\x08quantity\"\x14\n\x03Int\x12\r\n\x05value\x18\x01 \x01(\x03\"\x16\n\x05\x46loat\x12\r\n\x05value\x18\x01 \x01(\x01\"\x15\n\x04\x42ool\x12\r\n\x05value\x18\x01 \x01(\x08\":\n\x05\x41\x64Row\x12\x31\n\x07\x65lement\x18\x01 \x03(\x0b\x32 .luminary.proto.base.AdFloatType\"3\n\x08\x41\x64Matrix\x12\'\n\x03row\x18\x01 \x03(\x0b\x32\x1a.luminary.proto.base.AdRow*\xc5\x02\n\x07Subcode\x12\x17\n\x13SUBCODE_UNSPECIFIED\x10\x00\x12\x1a\n\x16SUBCODE_USER_NOT_FOUND\x10\x01\x12 \n\x1cSUBCODE_JOB_CANCELED_BY_USER\x10\x02\x12#\n\x1fSUBCODE_JOB_CANCELED_DIVERGENCE\x10\x03\x12$\n SUBCODE_JOB_CANCELED_SETUP_ERROR\x10\x04\x12\x1f\n\x1bSUBCODE_INCOMPATIBLE_CLIENT\x10\x05\x12\x1e\n\x1aSUBCODE_INSUFFICIENT_QUOTA\x10\x06\x12/\n+SUBCODE_EMAIL_DOMAIN_NOT_IN_ALLOWED_DOMAINS\x10\x07\x12&\n\"SUBCODE_TRIAL_ACCOUNT_USER_BLOCKED\x10\x08*t\n\rJobStatusType\x12\x0b\n\x07Invalid\x10\x00\x12\n\n\x06\x41\x63tive\x10\x01\x12\r\n\tCompleted\x10\x02\x12\n\n\x06\x46\x61iled\x10\x03\x12\r\n\tSuspended\x10\x04\x12\x10\n\x0cPendingRetry\x10\x05\x12\x0e\n\nSuspending\x10\x06*\x80\x01\n\x10Vector3Component\x12\x1e\n\x1aVECTOR_3_COMPONENT_INVALID\x10\x00\x12\x18\n\x14VECTOR_3_COMPONENT_X\x10\x01\x12\x18\n\x14VECTOR_3_COMPONENT_Y\x10\x02\x12\x18\n\x14VECTOR_3_COMPONENT_Z\x10\x03\x42#Z!luminarycloud.com/core/proto/baseb\x06proto3')
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15proto/base/base.proto\x12\x13luminary.proto.base\x1a google/protobuf/descriptor.proto\x1a\x19google/protobuf/any.proto\x1a\x1dproto/quantity/quantity.proto\x1a\x1dproto/lcstatus/lcstatus.proto\"/\n\x08\x43hecksum\x12\x10\n\x06sha256\x18\x01 \x01(\x0cH\x00\x42\x0b\n\talgorithmJ\x04\x08\x02\x10\x03\"N\n\x06Status\x12\x0c\n\x04\x63ode\x18\x01 \x01(\x05\x12\x0f\n\x07message\x18\x02 \x01(\t\x12%\n\x07\x64\x65tails\x18\x03 \x03(\x0b\x32\x14.google.protobuf.Any\"x\n\rStatusPayload\x12-\n\x07subcode\x18\x01 \x01(\x0e\x32\x1c.luminary.proto.base.Subcode\x12\x38\n\x06\x64\x65tail\x18\x03 \x03(\x0b\x32(.luminary.proto.base.StatusPayloadDetail\"5\n\x13StatusPayloadDetail\x12\x0f\n\x07message\x18\x10 \x01(\t\x12\r\n\x05where\x18\x11 \x01(\t\"\xb3\x01\n\tJobStatus\x12/\n\x03typ\x18\x01 \x01(\x0e\x32\".luminary.proto.base.JobStatusType\x12-\n\x06status\x18\x02 \x01(\x0b\x32\x1b.luminary.proto.base.StatusH\x00\x12\x35\n\x08lcstatus\x18\x03 \x01(\x0b\x32!.luminary.proto.lcstatus.LCStatusH\x00\x42\x0f\n\rfailed_reason\"\x92\x01\n\tAdVector3\x12+\n\x01x\x18\x01 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\x12+\n\x01y\x18\x02 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\x12+\n\x01z\x18\x03 \x01(\x0b\x32 .luminary.proto.base.AdFloatType\"*\n\x07Vector3\x12\t\n\x01x\x18\x01 \x01(\x01\x12\t\n\x01y\x18\x02 \x01(\x01\x12\t\n\x01z\x18\x03 \x01(\x01\"-\n\nIntVector3\x12\t\n\x01x\x18\x01 \x01(\x03\x12\t\n\x01y\x18\x02 \x01(\x03\x12\t\n\x01z\x18\x03 \x01(\x03\"\x84\x01\n\x07Matrix3\x12\'\n\x01\x61\x18\x01 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\'\n\x01\x62\x18\x02 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\x12\'\n\x01\x63\x18\x03 \x01(\x0b\x32\x1c.luminary.proto.base.Vector3\"C\n\x10\x46irstOrderAdType\x12\r\n\x05value\x18\x01 \x01(\x01\x12\x0f\n\x07tangent\x18\x02 \x03(\x01\x12\x0f\n\x07\x61\x64joint\x18\x03 \x03(\x01\"\xb9\x01\n\x11SecondOrderAdType\x12\x34\n\x05value\x18\x01 \x01(\x0b\x32%.luminary.proto.base.FirstOrderAdType\x12\x36\n\x07tangent\x18\x02 \x03(\x0b\x32%.luminary.proto.base.FirstOrderAdType\x12\x36\n\x07\x61\x64joint\x18\x03 \x03(\x0b\x32%.luminary.proto.base.FirstOrderAdType\"3\n\x0e\x45xpressionType\x12\r\n\x05value\x18\x01 \x01(\x01\x12\x12\n\nexpression\x18\x02 \x01(\t\"\xad\x02\n\x0b\x41\x64\x46loatType\x12\x0f\n\x05value\x18\x01 \x01(\x01H\x00\x12<\n\x0b\x66irst_order\x18\x02 \x01(\x0b\x32%.luminary.proto.base.FirstOrderAdTypeH\x00\x12>\n\x0csecond_order\x18\x03 \x01(\x0b\x32&.luminary.proto.base.SecondOrderAdTypeH\x00\x12\x37\n\x08variable\x18\x05 \x01(\x0b\x32#.luminary.proto.base.ExpressionTypeH\x00\x12>\n\rquantity_type\x18\x04 \x01(\x0e\x32%.luminary.proto.quantity.QuantityTypeH\x01\x42\n\n\x08\x61\x64_typesB\n\n\x08quantity\"\x14\n\x03Int\x12\r\n\x05value\x18\x01 \x01(\x03\"\x16\n\x05\x46loat\x12\r\n\x05value\x18\x01 \x01(\x01\"\x15\n\x04\x42ool\x12\r\n\x05value\x18\x01 \x01(\x08\":\n\x05\x41\x64Row\x12\x31\n\x07\x65lement\x18\x01 \x03(\x0b\x32 .luminary.proto.base.AdFloatType\"3\n\x08\x41\x64Matrix\x12\'\n\x03row\x18\x01 \x03(\x0b\x32\x1a.luminary.proto.base.AdRow*\xef\x02\n\x07Subcode\x12\x17\n\x13SUBCODE_UNSPECIFIED\x10\x00\x12\x1a\n\x16SUBCODE_USER_NOT_FOUND\x10\x01\x12 \n\x1cSUBCODE_JOB_CANCELED_BY_USER\x10\x02\x12#\n\x1fSUBCODE_JOB_CANCELED_DIVERGENCE\x10\x03\x12$\n SUBCODE_JOB_CANCELED_SETUP_ERROR\x10\x04\x12\x1f\n\x1bSUBCODE_INCOMPATIBLE_CLIENT\x10\x05\x12\x1e\n\x1aSUBCODE_INSUFFICIENT_QUOTA\x10\x06\x12/\n+SUBCODE_EMAIL_DOMAIN_NOT_IN_ALLOWED_DOMAINS\x10\x07\x12&\n\"SUBCODE_TRIAL_ACCOUNT_USER_BLOCKED\x10\x08\x12(\n$SUBCODE_UNLIMITED_PLAN_EXCEEDS_QUOTA\x10\t*t\n\rJobStatusType\x12\x0b\n\x07Invalid\x10\x00\x12\n\n\x06\x41\x63tive\x10\x01\x12\r\n\tCompleted\x10\x02\x12\n\n\x06\x46\x61iled\x10\x03\x12\r\n\tSuspended\x10\x04\x12\x10\n\x0cPendingRetry\x10\x05\x12\x0e\n\nSuspending\x10\x06*\x80\x01\n\x10Vector3Component\x12\x1e\n\x1aVECTOR_3_COMPONENT_INVALID\x10\x00\x12\x18\n\x14VECTOR_3_COMPONENT_X\x10\x01\x12\x18\n\x14VECTOR_3_COMPONENT_Y\x10\x02\x12\x18\n\x14VECTOR_3_COMPONENT_Z\x10\x03\x42#Z!luminarycloud.com/core/proto/baseb\x06proto3')
23
23
 
24
24
  _SUBCODE = DESCRIPTOR.enum_types_by_name['Subcode']
25
25
  Subcode = enum_type_wrapper.EnumTypeWrapper(_SUBCODE)
@@ -36,6 +36,7 @@ SUBCODE_INCOMPATIBLE_CLIENT = 5
36
36
  SUBCODE_INSUFFICIENT_QUOTA = 6
37
37
  SUBCODE_EMAIL_DOMAIN_NOT_IN_ALLOWED_DOMAINS = 7
38
38
  SUBCODE_TRIAL_ACCOUNT_USER_BLOCKED = 8
39
+ SUBCODE_UNLIMITED_PLAN_EXCEEDS_QUOTA = 9
39
40
  Invalid = 0
40
41
  Active = 1
41
42
  Completed = 2
@@ -198,11 +199,11 @@ if _descriptor._USE_C_DESCRIPTORS == False:
198
199
  DESCRIPTOR._options = None
199
200
  DESCRIPTOR._serialized_options = b'Z!luminarycloud.com/core/proto/base'
200
201
  _SUBCODE._serialized_start=1829
201
- _SUBCODE._serialized_end=2154
202
- _JOBSTATUSTYPE._serialized_start=2156
203
- _JOBSTATUSTYPE._serialized_end=2272
204
- _VECTOR3COMPONENT._serialized_start=2275
205
- _VECTOR3COMPONENT._serialized_end=2403
202
+ _SUBCODE._serialized_end=2196
203
+ _JOBSTATUSTYPE._serialized_start=2198
204
+ _JOBSTATUSTYPE._serialized_end=2314
205
+ _VECTOR3COMPONENT._serialized_start=2317
206
+ _VECTOR3COMPONENT._serialized_end=2445
206
207
  _CHECKSUM._serialized_start=169
207
208
  _CHECKSUM._serialized_end=216
208
209
  _STATUS._serialized_start=218
@@ -48,6 +48,8 @@ class _SubcodeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTy
48
48
  """Set if the user's email domain is not in the list of allowed domains."""
49
49
  SUBCODE_TRIAL_ACCOUNT_USER_BLOCKED: _Subcode.ValueType # 8
50
50
  """Set if a trial user attempts to access restricted features."""
51
+ SUBCODE_UNLIMITED_PLAN_EXCEEDS_QUOTA: _Subcode.ValueType # 9
52
+ """Set if unlimited plan user exceeds quota for a given resource."""
51
53
 
52
54
  class Subcode(_Subcode, metaclass=_SubcodeEnumTypeWrapper):
53
55
  """Subcode is stored in StatusPayload.subcode. It classifies the error type in
@@ -75,6 +77,8 @@ SUBCODE_EMAIL_DOMAIN_NOT_IN_ALLOWED_DOMAINS: Subcode.ValueType # 7
75
77
  """Set if the user's email domain is not in the list of allowed domains."""
76
78
  SUBCODE_TRIAL_ACCOUNT_USER_BLOCKED: Subcode.ValueType # 8
77
79
  """Set if a trial user attempts to access restricted features."""
80
+ SUBCODE_UNLIMITED_PLAN_EXCEEDS_QUOTA: Subcode.ValueType # 9
81
+ """Set if unlimited plan user exceeds quota for a given resource."""
78
82
  global___Subcode = Subcode
79
83
 
80
84
  class _JobStatusType: