gpp-client 26.7.3.dev12__tar.gz → 26.9.0.dev1__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 (114) hide show
  1. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/PKG-INFO +1 -1
  2. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/__init__.py +24 -16
  3. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/client.py +143 -0
  4. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/custom_fields.py +145 -15
  5. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/custom_mutations.py +13 -7
  6. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/custom_typing_fields.py +18 -0
  7. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/enums.py +30 -0
  8. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/fragments.py +222 -226
  9. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/input_types.py +59 -3
  10. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/.gitignore +0 -0
  11. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/LICENSE +0 -0
  12. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/README.md +0 -0
  13. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/graphql/README.md +0 -0
  14. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/pyproject.toml +0 -0
  15. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/__init__.py +0 -0
  16. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/__init__.py +0 -0
  17. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/cli.py +0 -0
  18. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/commands/__init__.py +0 -0
  19. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/commands/attachment.py +0 -0
  20. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/commands/goats.py +0 -0
  21. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/commands/observation.py +0 -0
  22. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/commands/program.py +0 -0
  23. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/commands/scheduler.py +0 -0
  24. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/commands/site_status.py +0 -0
  25. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/commands/target.py +0 -0
  26. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/commands/workflow_state.py +0 -0
  27. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/console.py +0 -0
  28. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/output.py +0 -0
  29. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/cli/utils.py +0 -0
  30. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/client.py +0 -0
  31. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/constants.py +0 -0
  32. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/__init__.py +0 -0
  33. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/atom.py +0 -0
  34. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/attachment.py +0 -0
  35. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/base.py +0 -0
  36. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/goats.py +0 -0
  37. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/observation.py +0 -0
  38. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/program.py +0 -0
  39. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/scheduler.py +0 -0
  40. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/site_status.py +0 -0
  41. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/target.py +0 -0
  42. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/domains/workflow_state.py +0 -0
  43. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/environment.py +0 -0
  44. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/exceptions.py +0 -0
  45. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/async_base_client.py +0 -0
  46. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/base_model.py +0 -0
  47. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/base_operation.py +0 -0
  48. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/clone_observation.py +0 -0
  49. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/clone_target.py +0 -0
  50. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/create_call_for_proposals.py +0 -0
  51. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/create_observation.py +0 -0
  52. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/create_program.py +0 -0
  53. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/create_target_by_program_id.py +0 -0
  54. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/create_target_by_program_reference.py +0 -0
  55. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/create_target_by_proposal_reference.py +0 -0
  56. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/custom_queries.py +0 -0
  57. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/delete_call_for_proposals_by_id.py +0 -0
  58. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/delete_observation_by_id.py +0 -0
  59. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/delete_observation_by_reference.py +0 -0
  60. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/delete_program_by_id.py +0 -0
  61. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/delete_target_by_id.py +0 -0
  62. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/exceptions.py +0 -0
  63. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_call_for_proposals.py +0 -0
  64. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_calls_for_proposals.py +0 -0
  65. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_goats_config_options.py +0 -0
  66. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_goats_configuration_requests.py +0 -0
  67. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_goats_observations.py +0 -0
  68. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_goats_programs.py +0 -0
  69. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_observation.py +0 -0
  70. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_observation_attachments_by_id.py +0 -0
  71. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_observation_attachments_by_reference.py +0 -0
  72. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_observation_workflow_state_by_id.py +0 -0
  73. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_observation_workflow_state_by_reference.py +0 -0
  74. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_observations.py +0 -0
  75. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_program_attachments_by_id.py +0 -0
  76. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_program_attachments_by_proposal_reference.py +0 -0
  77. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_program_attachments_by_reference.py +0 -0
  78. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_program_by_id.py +0 -0
  79. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_program_by_proposal_reference.py +0 -0
  80. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_program_by_reference.py +0 -0
  81. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_programs.py +0 -0
  82. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_scheduler_all_programs_id.py +0 -0
  83. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_scheduler_programs.py +0 -0
  84. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_target_by_id.py +0 -0
  85. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/get_targets.py +0 -0
  86. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/obs_calculation_update.py +0 -0
  87. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/observation_edit.py +0 -0
  88. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/package_environment.py +0 -0
  89. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/ping.py +0 -0
  90. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/program_edit.py +0 -0
  91. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/restore_call_for_proposals_by_id.py +0 -0
  92. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/restore_observation_by_id.py +0 -0
  93. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/restore_observation_by_reference.py +0 -0
  94. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/restore_program_by_id.py +0 -0
  95. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/restore_target_by_id.py +0 -0
  96. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/scheduler_observations_updates.py +0 -0
  97. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/set_observation_workflow_state.py +0 -0
  98. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/target_edit.py +0 -0
  99. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/update_call_for_proposals_by_id.py +0 -0
  100. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/update_calls_for_proposals.py +0 -0
  101. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/update_observation_by_id.py +0 -0
  102. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/update_observation_by_reference.py +0 -0
  103. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/update_observations.py +0 -0
  104. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/update_program_by_id.py +0 -0
  105. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/update_programs.py +0 -0
  106. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/update_target_by_id.py +0 -0
  107. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/generated/update_targets.py +0 -0
  108. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/logging_utils.py +0 -0
  109. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/rest/__init__.py +0 -0
  110. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/rest/client.py +0 -0
  111. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/rest/models.py +0 -0
  112. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/rest/utils.py +0 -0
  113. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/settings.py +0 -0
  114. {gpp_client-26.7.3.dev12 → gpp_client-26.9.0.dev1}/src/gpp_client/urls.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: gpp-client
3
- Version: 26.7.3.dev12
3
+ Version: 26.9.0.dev1
4
4
  Summary: Gemini Program Platform client.
5
5
  Project-URL: Homepage, https://github.com/gemini-hlsw/gpp-client
6
6
  Project-URL: Source, https://github.com/gemini-hlsw/gpp-client
@@ -73,6 +73,8 @@ from .delete_target_by_id import (
73
73
  DeleteTargetByIdUpdateTargetsTargetsProgram,
74
74
  )
75
75
  from .enums import (
76
+ AltairMode,
77
+ AltairNdFilter,
76
78
  ArchiveDuplicationState,
77
79
  ArcType,
78
80
  AtomExecutionState,
@@ -107,6 +109,7 @@ from .enums import (
107
109
  ExecutionEventType,
108
110
  ExecutionState,
109
111
  Existence,
112
+ FieldLens,
110
113
  Flamingos2CustomSlitWidth,
111
114
  Flamingos2Decker,
112
115
  Flamingos2Disperser,
@@ -184,6 +187,7 @@ from .enums import (
184
187
  MosPreImaging,
185
188
  MosSlitPriority,
186
189
  ObsActiveStatus,
190
+ ObservationPriority,
187
191
  ObservationValidationCode,
188
192
  ObservationWorkflowState,
189
193
  Observatory,
@@ -201,6 +205,7 @@ from .enums import (
201
205
  ProgramUserRole,
202
206
  ProgramUserSupportRoleType,
203
207
  ProposalStatus,
208
+ ProposalSummaryGenerationState,
204
209
  ProposalSummaryStyle,
205
210
  QuasarSpectrum,
206
211
  SchedulingMode,
@@ -383,14 +388,6 @@ from .fragments import (
383
388
  GmosSouthMosDetailsExposureTimeModeTimeAndCount,
384
389
  GmosSouthMosDetailsExposureTimeModeTimeAndCountAt,
385
390
  GmosSouthMosDetailsExposureTimeModeTimeAndCountTime,
386
- GnirsDetails,
387
- GnirsDetailsFlamingos2Mos,
388
- GnirsDetailsGmosNorthIfu,
389
- GnirsDetailsGmosNorthMos,
390
- GnirsDetailsGmosSouthIfu,
391
- GnirsDetailsGmosSouthMos,
392
- GnirsDetailsGnirsImaging,
393
- GnirsDetailsGnirsSpectroscopy,
394
391
  GnirsImagingDetails,
395
392
  GnirsImagingDetailsFilters,
396
393
  GnirsImagingDetailsFiltersExposureTimeMode,
@@ -456,9 +453,14 @@ from .fragments import (
456
453
  Igrins2LongSlitDetailsExposureTimeModeTimeAndCountTime,
457
454
  Igrins2LongSlitDetailsTelluricType,
458
455
  NonsiderealTargetDetails,
456
+ ObservationAttachmentDetails,
457
+ ObservationAttachmentDetailsAttachments,
458
+ ObservationAttachmentDetailsAttachmentsMask,
459
459
  ObservationCore,
460
460
  ObservationCoreReference,
461
461
  ObservationDetails,
462
+ ObservationDetailsAttachments,
463
+ ObservationDetailsAttachmentsMask,
462
464
  ObservationDetailsConstraintSet,
463
465
  ObservationDetailsExecution,
464
466
  ObservationDetailsExecutionDigest,
@@ -1044,6 +1046,7 @@ from .input_types import (
1044
1046
  AeonMultiFacilityInput,
1045
1047
  AirMassRangeInput,
1046
1048
  AllocationInput,
1049
+ AltairInput,
1047
1050
  AngleInput,
1048
1051
  AttachmentPropertiesInput,
1049
1052
  BandBrightnessIntegratedInput,
@@ -1374,6 +1377,7 @@ from .input_types import (
1374
1377
  WhereOrderInt,
1375
1378
  WhereOrderLong,
1376
1379
  WhereOrderObservationId,
1380
+ WhereOrderObservationPriority,
1377
1381
  WhereOrderObservationWorkflowState,
1378
1382
  WhereOrderPosBigDecimal,
1379
1383
  WhereOrderPosInt,
@@ -1597,6 +1601,9 @@ __all__ = [
1597
1601
  "AeonMultiFacilityInput",
1598
1602
  "AirMassRangeInput",
1599
1603
  "AllocationInput",
1604
+ "AltairInput",
1605
+ "AltairMode",
1606
+ "AltairNdFilter",
1600
1607
  "AngleInput",
1601
1608
  "ArcType",
1602
1609
  "ArchiveDuplicationState",
@@ -1744,6 +1751,7 @@ __all__ = [
1744
1751
  "Existence",
1745
1752
  "ExposureTimeModeInput",
1746
1753
  "FastTurnaroundInput",
1754
+ "FieldLens",
1747
1755
  "Flamingos2AtomInput",
1748
1756
  "Flamingos2CustomMaskInput",
1749
1757
  "Flamingos2CustomSlitWidth",
@@ -2418,14 +2426,6 @@ __all__ = [
2418
2426
  "GnirsCamera",
2419
2427
  "GnirsCentralWavelengthConfigInput",
2420
2428
  "GnirsDecker",
2421
- "GnirsDetails",
2422
- "GnirsDetailsFlamingos2Mos",
2423
- "GnirsDetailsGmosNorthIfu",
2424
- "GnirsDetailsGmosNorthMos",
2425
- "GnirsDetailsGmosSouthIfu",
2426
- "GnirsDetailsGmosSouthMos",
2427
- "GnirsDetailsGnirsImaging",
2428
- "GnirsDetailsGnirsSpectroscopy",
2429
2429
  "GnirsDynamicInput",
2430
2430
  "GnirsFilter",
2431
2431
  "GnirsFpuIfu",
@@ -2565,9 +2565,14 @@ __all__ = [
2565
2565
  "ObsCalculationUpdateObscalcUpdateValueExecutionVisitsMatchesObservation",
2566
2566
  "ObsStatus",
2567
2567
  "ObscalcUpdateInput",
2568
+ "ObservationAttachmentDetails",
2569
+ "ObservationAttachmentDetailsAttachments",
2570
+ "ObservationAttachmentDetailsAttachmentsMask",
2568
2571
  "ObservationCore",
2569
2572
  "ObservationCoreReference",
2570
2573
  "ObservationDetails",
2574
+ "ObservationDetailsAttachments",
2575
+ "ObservationDetailsAttachmentsMask",
2571
2576
  "ObservationDetailsConstraintSet",
2572
2577
  "ObservationDetailsExecution",
2573
2578
  "ObservationDetailsExecutionDigest",
@@ -2616,6 +2621,7 @@ __all__ = [
2616
2621
  "ObservationEditObservationEditValueTimingWindowsEndTimingWindowEndAfterRepeat",
2617
2622
  "ObservationEditObservationEditValueTimingWindowsEndTimingWindowEndAfterRepeatPeriod",
2618
2623
  "ObservationEditObservationEditValueTimingWindowsEndTimingWindowEndAt",
2624
+ "ObservationPriority",
2619
2625
  "ObservationPropertiesInput",
2620
2626
  "ObservationTimesInput",
2621
2627
  "ObservationValidationCode",
@@ -2716,6 +2722,7 @@ __all__ = [
2716
2722
  "ProperMotionInput",
2717
2723
  "ProposalPropertiesInput",
2718
2724
  "ProposalStatus",
2725
+ "ProposalSummaryGenerationState",
2719
2726
  "ProposalSummaryStyle",
2720
2727
  "QuasarSpectrum",
2721
2728
  "QueueInput",
@@ -3034,6 +3041,7 @@ __all__ = [
3034
3041
  "WhereOrderInt",
3035
3042
  "WhereOrderLong",
3036
3043
  "WhereOrderObservationId",
3044
+ "WhereOrderObservationPriority",
3037
3045
  "WhereOrderObservationWorkflowState",
3038
3046
  "WhereOrderPosBigDecimal",
3039
3047
  "WhereOrderPosInt",
@@ -2491,6 +2491,19 @@ class GraphQLClient(AsyncBaseClient):
2491
2491
  }
2492
2492
  }
2493
2493
  }
2494
+ attachments {
2495
+ id
2496
+ fileName
2497
+ attachmentType
2498
+ mask {
2499
+ name
2500
+ instrument
2501
+ pixelScale
2502
+ dispersionDirection
2503
+ scienceSlitCount
2504
+ acquisitionSlitCount
2505
+ }
2506
+ }
2494
2507
  }
2495
2508
 
2496
2509
  fragment ObservingModeDetails on ObservingMode {
@@ -3488,6 +3501,19 @@ class GraphQLClient(AsyncBaseClient):
3488
3501
  }
3489
3502
  }
3490
3503
  }
3504
+ attachments {
3505
+ id
3506
+ fileName
3507
+ attachmentType
3508
+ mask {
3509
+ name
3510
+ instrument
3511
+ pixelScale
3512
+ dispersionDirection
3513
+ scienceSlitCount
3514
+ acquisitionSlitCount
3515
+ }
3516
+ }
3491
3517
  }
3492
3518
 
3493
3519
  fragment ObservingModeDetails on ObservingMode {
@@ -4486,6 +4512,19 @@ class GraphQLClient(AsyncBaseClient):
4486
4512
  }
4487
4513
  }
4488
4514
  }
4515
+ attachments {
4516
+ id
4517
+ fileName
4518
+ attachmentType
4519
+ mask {
4520
+ name
4521
+ instrument
4522
+ pixelScale
4523
+ dispersionDirection
4524
+ scienceSlitCount
4525
+ acquisitionSlitCount
4526
+ }
4527
+ }
4489
4528
  }
4490
4529
 
4491
4530
  fragment ObservingModeDetails on ObservingMode {
@@ -5486,6 +5525,19 @@ class GraphQLClient(AsyncBaseClient):
5486
5525
  }
5487
5526
  }
5488
5527
  }
5528
+ attachments {
5529
+ id
5530
+ fileName
5531
+ attachmentType
5532
+ mask {
5533
+ name
5534
+ instrument
5535
+ pixelScale
5536
+ dispersionDirection
5537
+ scienceSlitCount
5538
+ acquisitionSlitCount
5539
+ }
5540
+ }
5489
5541
  }
5490
5542
 
5491
5543
  fragment ObservingModeDetails on ObservingMode {
@@ -6489,6 +6541,19 @@ class GraphQLClient(AsyncBaseClient):
6489
6541
  }
6490
6542
  }
6491
6543
  }
6544
+ attachments {
6545
+ id
6546
+ fileName
6547
+ attachmentType
6548
+ mask {
6549
+ name
6550
+ instrument
6551
+ pixelScale
6552
+ dispersionDirection
6553
+ scienceSlitCount
6554
+ acquisitionSlitCount
6555
+ }
6556
+ }
6492
6557
  }
6493
6558
 
6494
6559
  fragment ObservingModeDetails on ObservingMode {
@@ -7492,6 +7557,19 @@ class GraphQLClient(AsyncBaseClient):
7492
7557
  }
7493
7558
  }
7494
7559
  }
7560
+ attachments {
7561
+ id
7562
+ fileName
7563
+ attachmentType
7564
+ mask {
7565
+ name
7566
+ instrument
7567
+ pixelScale
7568
+ dispersionDirection
7569
+ scienceSlitCount
7570
+ acquisitionSlitCount
7571
+ }
7572
+ }
7495
7573
  }
7496
7574
 
7497
7575
  fragment ObservingModeDetails on ObservingMode {
@@ -8492,6 +8570,19 @@ class GraphQLClient(AsyncBaseClient):
8492
8570
  }
8493
8571
  }
8494
8572
  }
8573
+ attachments {
8574
+ id
8575
+ fileName
8576
+ attachmentType
8577
+ mask {
8578
+ name
8579
+ instrument
8580
+ pixelScale
8581
+ dispersionDirection
8582
+ scienceSlitCount
8583
+ acquisitionSlitCount
8584
+ }
8585
+ }
8495
8586
  }
8496
8587
 
8497
8588
  fragment ObservingModeDetails on ObservingMode {
@@ -9492,6 +9583,19 @@ class GraphQLClient(AsyncBaseClient):
9492
9583
  }
9493
9584
  }
9494
9585
  }
9586
+ attachments {
9587
+ id
9588
+ fileName
9589
+ attachmentType
9590
+ mask {
9591
+ name
9592
+ instrument
9593
+ pixelScale
9594
+ dispersionDirection
9595
+ scienceSlitCount
9596
+ acquisitionSlitCount
9597
+ }
9598
+ }
9495
9599
  }
9496
9600
 
9497
9601
  fragment ObservingModeDetails on ObservingMode {
@@ -10492,6 +10596,19 @@ class GraphQLClient(AsyncBaseClient):
10492
10596
  }
10493
10597
  }
10494
10598
  }
10599
+ attachments {
10600
+ id
10601
+ fileName
10602
+ attachmentType
10603
+ mask {
10604
+ name
10605
+ instrument
10606
+ pixelScale
10607
+ dispersionDirection
10608
+ scienceSlitCount
10609
+ acquisitionSlitCount
10610
+ }
10611
+ }
10495
10612
  }
10496
10613
 
10497
10614
  fragment ObservingModeDetails on ObservingMode {
@@ -11493,6 +11610,19 @@ class GraphQLClient(AsyncBaseClient):
11493
11610
  }
11494
11611
  }
11495
11612
  }
11613
+ attachments {
11614
+ id
11615
+ fileName
11616
+ attachmentType
11617
+ mask {
11618
+ name
11619
+ instrument
11620
+ pixelScale
11621
+ dispersionDirection
11622
+ scienceSlitCount
11623
+ acquisitionSlitCount
11624
+ }
11625
+ }
11496
11626
  }
11497
11627
 
11498
11628
  fragment ObservingModeDetails on ObservingMode {
@@ -12501,6 +12631,19 @@ class GraphQLClient(AsyncBaseClient):
12501
12631
  }
12502
12632
  }
12503
12633
  }
12634
+ attachments {
12635
+ id
12636
+ fileName
12637
+ attachmentType
12638
+ mask {
12639
+ name
12640
+ instrument
12641
+ pixelScale
12642
+ dispersionDirection
12643
+ scienceSlitCount
12644
+ acquisitionSlitCount
12645
+ }
12646
+ }
12504
12647
  }
12505
12648
 
12506
12649
  fragment ObservingModeDetails on ObservingMode {
@@ -15,6 +15,7 @@ from .custom_typing_fields import (
15
15
  AllConfigChangeEstimatesGraphQLField,
16
16
  AllDetectorEstimatesGraphQLField,
17
17
  AllocationGraphQLField,
18
+ AltairGraphQLField,
18
19
  AngleGraphQLField,
19
20
  ArchiveDuplicationGraphQLField,
20
21
  ArchiveMatchGraphQLField,
@@ -300,6 +301,8 @@ from .custom_typing_fields import (
300
301
  ProperMotionRAGraphQLField,
301
302
  ProposalGraphQLField,
302
303
  ProposalReferenceGraphQLField,
304
+ ProposalSummaryFailureGraphQLField,
305
+ ProposalSummaryGenerationGraphQLField,
303
306
  ProposalSummaryPropertiesGraphQLField,
304
307
  QueueGraphQLField,
305
308
  RadialVelocityGraphQLField,
@@ -732,6 +735,29 @@ class AllocationFields(GraphQLField):
732
735
  return self
733
736
 
734
737
 
738
+ class AltairFields(GraphQLField):
739
+ """Altair (Gemini North adaptive optics) configuration. Only GNIRS observations
740
+ may be configured to observe behind Altair."""
741
+
742
+ mode: "AltairGraphQLField" = AltairGraphQLField("mode")
743
+ "The Altair guiding mode."
744
+ explicit_field_lens: "AltairGraphQLField" = AltairGraphQLField("explicitFieldLens")
745
+ "The user's field lens override, or null for AUTO. When AUTO the field lens\nfollows the guide star separation. The LGS modes always use the field lens,\nso an explicit value of OUT is rejected for them."
746
+ cass_rotator: "AltairGraphQLField" = AltairGraphQLField("cassRotator")
747
+ "The cassegrain rotator tracking mode used while observing behind Altair."
748
+ nd_filter: "AltairGraphQLField" = AltairGraphQLField("ndFilter")
749
+ "The Altair neutral density filter position."
750
+
751
+ def fields(self, *subfields: AltairGraphQLField) -> "AltairFields":
752
+ """Subfields should come from the AltairFields class"""
753
+ self._subfields.extend(subfields)
754
+ return self
755
+
756
+ def alias(self, alias: str) -> "AltairFields":
757
+ self._alias = alias
758
+ return self
759
+
760
+
735
761
  class AngleFields(GraphQLField):
736
762
  """An angle in a variety of units. Values are normalized to [0, 360°) unless
737
763
  the field documents a signed quantity, in which case negative values are
@@ -784,7 +810,7 @@ class ArchiveDuplicationFields(GraphQLField):
784
810
  state: "ArchiveDuplicationGraphQLField" = ArchiveDuplicationGraphQLField("state")
785
811
  "State of the stored snapshot. Partly derived: an observation with no\nobserving mode reads NOT_APPLICABLE whatever was stored."
786
812
  stale: "ArchiveDuplicationGraphQLField" = ArchiveDuplicationGraphQLField("stale")
787
- "Whether the snapshot no longer describes the observation as it now stands:\nthe archive queries the search would run today differ from `queryUrls`.\nNever true when nothing was searched, when nothing can be searched now, or\nafter submission."
813
+ "Whether the snapshot no longer describes the observation as it now stands:\nthe archive queries the search would run today differ from `queryUrls`.\nNever true when nothing was searched, when nothing can be searched now, or\nwhen a refresh would be rejected: the proposal is submitted or was not\naccepted, or the observation is completed."
788
814
  match_count: "ArchiveDuplicationGraphQLField" = ArchiveDuplicationGraphQLField(
789
815
  "matchCount"
790
816
  )
@@ -4653,7 +4679,9 @@ class Flamingos2LongSlitFields(GraphQLField):
4653
4679
 
4654
4680
  @classmethod
4655
4681
  def default_telescope_configs(cls) -> "SlitTelescopeConfigsFields":
4656
- """Default telescope configs."""
4682
+ """Default telescope configs. For a telluric derived from a MOS observation
4683
+ these are the MOS telluric offsets, so such a telluric normally has no
4684
+ explicit override."""
4657
4685
  return SlitTelescopeConfigsFields("defaultTelescopeConfigs")
4658
4686
 
4659
4687
  @classmethod
@@ -7977,9 +8005,11 @@ class GnirsIfuFields(GraphQLField):
7977
8005
 
7978
8006
  @classmethod
7979
8007
  def central_wavelengths(cls) -> "GnirsCentralWavelengthConfigFields":
7980
- """The central wavelengths at which spectra are taken, in increasing wavelength
7981
- order. Each one is a separate configuration with its own exposure time mode,
7982
- coadds, ITC calculation and calibrations."""
8008
+ """The central wavelengths at which spectra are taken, in the order they were
8009
+ specified and in which the sequence executes them. Each entry is a separate
8010
+ configuration with its own exposure time mode, coadds, ITC calculation and
8011
+ calibrations; a wavelength may appear more than once, each occurrence being
8012
+ independent."""
7983
8013
  return GnirsCentralWavelengthConfigFields("centralWavelengths")
7984
8014
 
7985
8015
  @classmethod
@@ -8203,9 +8233,11 @@ class GnirsLongSlitFields(GraphQLField):
8203
8233
 
8204
8234
  @classmethod
8205
8235
  def central_wavelengths(cls) -> "GnirsCentralWavelengthConfigFields":
8206
- """The central wavelengths at which spectra are taken, in increasing wavelength
8207
- order. Each one is a separate configuration with its own exposure time mode,
8208
- coadds, ITC calculation and calibrations."""
8236
+ """The central wavelengths at which spectra are taken, in the order they were
8237
+ specified and in which the sequence executes them. Each entry is a separate
8238
+ configuration with its own exposure time mode, coadds, ITC calculation and
8239
+ calibrations; a wavelength may appear more than once, each occurrence being
8240
+ independent."""
8209
8241
  return GnirsCentralWavelengthConfigFields("centralWavelengths")
8210
8242
 
8211
8243
  @classmethod
@@ -8228,6 +8260,9 @@ class GnirsLongSlitFields(GraphQLField):
8228
8260
 
8229
8261
  @classmethod
8230
8262
  def default_telescope_configs(cls) -> "SlitTelescopeConfigsFields":
8263
+ """Default telescope configs for the configuration. For a telluric calibration
8264
+ these are the telluric offsets, so a telluric normally has no explicit
8265
+ override."""
8231
8266
  return SlitTelescopeConfigsFields("defaultTelescopeConfigs")
8232
8267
 
8233
8268
  @classmethod
@@ -8307,9 +8342,11 @@ class GnirsSpectroscopyFields(GraphQLField):
8307
8342
 
8308
8343
  @classmethod
8309
8344
  def central_wavelengths(cls) -> "GnirsCentralWavelengthConfigFields":
8310
- """The central wavelengths at which spectra are taken, in increasing wavelength
8311
- order. Each one is a separate configuration with its own exposure time mode,
8312
- coadds, ITC calculation and calibrations."""
8345
+ """The central wavelengths at which spectra are taken, in the order they were
8346
+ specified and in which the sequence executes them. Each entry is a separate
8347
+ configuration with its own exposure time mode, coadds, ITC calculation and
8348
+ calibrations; a wavelength may appear more than once, each occurrence being
8349
+ independent."""
8313
8350
  return GnirsCentralWavelengthConfigFields("centralWavelengths")
8314
8351
 
8315
8352
  @classmethod
@@ -8485,6 +8522,9 @@ class GnirsSpectroscopyLongSlitFields(GraphQLField):
8485
8522
 
8486
8523
  @classmethod
8487
8524
  def default_telescope_configs(cls) -> "SlitTelescopeConfigsFields":
8525
+ """Default telescope configs for the configuration. For a telluric calibration
8526
+ these are the telluric offsets, so a telluric normally has no explicit
8527
+ override."""
8488
8528
  return SlitTelescopeConfigsFields("defaultTelescopeConfigs")
8489
8529
 
8490
8530
  @classmethod
@@ -9767,8 +9807,10 @@ class ItcGnirsImagingResultSetFields(GraphQLField):
9767
9807
 
9768
9808
 
9769
9809
  class ItcGnirsSpectroscopyFields(GraphQLField):
9770
- """GNIRS spectroscopy ITC results. Each central wavelength is a separate
9771
- configuration and is paired with its own result set."""
9810
+ """GNIRS spectroscopy ITC results: one result set per entry in the observation's
9811
+ central wavelength list, in the same order, so the nth element here corresponds
9812
+ to the nth `centralWavelengths` element. Each entry is a separate configuration,
9813
+ and a central wavelength may therefore appear more than once."""
9772
9814
 
9773
9815
  itc_type: "ItcGnirsSpectroscopyGraphQLField" = ItcGnirsSpectroscopyGraphQLField(
9774
9816
  "itcType"
@@ -9802,7 +9844,9 @@ class ItcGnirsSpectroscopyFields(GraphQLField):
9802
9844
 
9803
9845
  class ItcGnirsSpectroscopyResultSetFields(GraphQLField):
9804
9846
  """Combines a GNIRS spectroscopy central wavelength with an `ItcResultSet`. In
9805
- other words, ITC results for all targets but a single central wavelength."""
9847
+ other words, ITC results for all targets but a single entry in the observation's
9848
+ central wavelength list. The wavelength does not identify the entry, since it
9849
+ may be repeated; see `ItcGnirsSpectroscopy.gnirsSpectroscopyScience`."""
9806
9850
 
9807
9851
  @classmethod
9808
9852
  def central_wavelength(cls) -> "WavelengthFields":
@@ -10466,6 +10510,8 @@ class ObservationFields(GraphQLField):
10466
10510
  "The Calibration role of this observation"
10467
10511
  observer_notes: "ObservationGraphQLField" = ObservationGraphQLField("observerNotes")
10468
10512
  "Notes for the observer"
10513
+ priority: "ObservationGraphQLField" = ObservationGraphQLField("priority")
10514
+ "The PI's declared priority for this observation, relative to the other\nobservations of the same program. Defaults to MEDIUM."
10469
10515
 
10470
10516
  @classmethod
10471
10517
  def configuration(cls) -> "ConfigurationFields":
@@ -11273,6 +11319,11 @@ class ProgramFields(GraphQLField):
11273
11319
  """Observatory archive properties related to this program."""
11274
11320
  return GoaPropertiesFields("goa")
11275
11321
 
11322
+ @classmethod
11323
+ def proposal_summary_generation(cls) -> "ProposalSummaryGenerationFields":
11324
+ """State of this program's proposal summary regeneration."""
11325
+ return ProposalSummaryGenerationFields("proposalSummaryGeneration")
11326
+
11276
11327
  resource_limit: "ProgramGraphQLField" = ProgramGraphQLField("resourceLimit")
11277
11328
  "Maximum number of resources (observations, groups, targets, attachments, and\nprogram notes, combined) that may be associated with this program."
11278
11329
  resource_count: "ProgramGraphQLField" = ProgramGraphQLField("resourceCount")
@@ -11298,6 +11349,7 @@ class ProgramFields(GraphQLField):
11298
11349
  "ProgramReferenceInterface",
11299
11350
  "ProgramUserFields",
11300
11351
  "ProposalFields",
11352
+ "ProposalSummaryGenerationFields",
11301
11353
  "UserInvitationFields",
11302
11354
  ],
11303
11355
  ) -> "ProgramFields":
@@ -11686,6 +11738,65 @@ class ProposalReferenceFields(GraphQLField):
11686
11738
  return self
11687
11739
 
11688
11740
 
11741
+ class ProposalSummaryFailureFields(GraphQLField):
11742
+ """One failed render of a proposal summary regeneration."""
11743
+
11744
+ partner: "ProposalSummaryFailureGraphQLField" = ProposalSummaryFailureGraphQLField(
11745
+ "partner"
11746
+ )
11747
+ "The partner whose render failed. Null for the single render of a proposal\nwith no partner splits."
11748
+ message: "ProposalSummaryFailureGraphQLField" = ProposalSummaryFailureGraphQLField(
11749
+ "message"
11750
+ )
11751
+ "Why this render failed, in terms an investigator can act on."
11752
+
11753
+ def fields(
11754
+ self, *subfields: ProposalSummaryFailureGraphQLField
11755
+ ) -> "ProposalSummaryFailureFields":
11756
+ """Subfields should come from the ProposalSummaryFailureFields class"""
11757
+ self._subfields.extend(subfields)
11758
+ return self
11759
+
11760
+ def alias(self, alias: str) -> "ProposalSummaryFailureFields":
11761
+ self._alias = alias
11762
+ return self
11763
+
11764
+
11765
+ class ProposalSummaryGenerationFields(GraphQLField):
11766
+ """State of a program's proposal summary regeneration.
11767
+
11768
+ GENERATING is expected to terminate under normal operation (timeouts and retries), but may remain GENERATING if rendering is unavailable."""
11769
+
11770
+ state: "ProposalSummaryGenerationGraphQLField" = (
11771
+ ProposalSummaryGenerationGraphQLField("state")
11772
+ )
11773
+ "The state of `ProposalSummaryGeneration`."
11774
+ requested_at: "ProposalSummaryGenerationGraphQLField" = (
11775
+ ProposalSummaryGenerationGraphQLField("requestedAt")
11776
+ )
11777
+ "When the oldest render still outstanding was requested. Null when state is IDLE."
11778
+
11779
+ @classmethod
11780
+ def failures(cls) -> "ProposalSummaryFailureFields":
11781
+ """The renders of the last regeneration that failed, one entry per partner.
11782
+ Empty unless state is FAILED."""
11783
+ return ProposalSummaryFailureFields("failures")
11784
+
11785
+ def fields(
11786
+ self,
11787
+ *subfields: Union[
11788
+ ProposalSummaryGenerationGraphQLField, "ProposalSummaryFailureFields"
11789
+ ],
11790
+ ) -> "ProposalSummaryGenerationFields":
11791
+ """Subfields should come from the ProposalSummaryGenerationFields class"""
11792
+ self._subfields.extend(subfields)
11793
+ return self
11794
+
11795
+ def alias(self, alias: str) -> "ProposalSummaryGenerationFields":
11796
+ self._alias = alias
11797
+ return self
11798
+
11799
+
11689
11800
  class ProposalSummaryPropertiesFields(GraphQLField):
11690
11801
  """Properties of an ODB-generated proposal summary PDF."""
11691
11802
 
@@ -13822,15 +13933,34 @@ class TargetEnvironmentFields(GraphQLField):
13822
13933
  "blindOffsetType"
13823
13934
  )
13824
13935
  "The type of blind offset (automatic or manual) if a blind offset exists."
13936
+ guide_probe: "TargetEnvironmentGraphQLField" = TargetEnvironmentGraphQLField(
13937
+ "guideProbe"
13938
+ )
13939
+ "The guide probe the automatic guide star search uses: the explicit probe if\nset, otherwise the default. Null when no default can be determined."
13940
+ default_guide_probe: "TargetEnvironmentGraphQLField" = (
13941
+ TargetEnvironmentGraphQLField("defaultGuideProbe")
13942
+ )
13943
+ "The default guide probe for the observing mode and asterism track type. Null\nwhen the observation has no observing mode or targets, or when the mode does\nnot support guiding."
13944
+ explicit_guide_probe: "TargetEnvironmentGraphQLField" = (
13945
+ TargetEnvironmentGraphQLField("explicitGuideProbe")
13946
+ )
13947
+ "The user selected guide probe, if any, set via\n`TargetEnvironmentInput.explicitGuideProbe`."
13825
13948
  cass_rotator: "TargetEnvironmentGraphQLField" = TargetEnvironmentGraphQLField(
13826
13949
  "cassRotator"
13827
13950
  )
13828
- "The cassegrain rotator tracking mode."
13951
+ "The cassegrain rotator tracking mode: the value stored with the Altair\nconfiguration when the observation has one, otherwise derived from the\ninstrument."
13952
+
13953
+ @classmethod
13954
+ def altair(cls) -> "AltairFields":
13955
+ """Altair adaptive optics configuration, only for GNIRS observations. Null when
13956
+ the observation does not observe behind Altair."""
13957
+ return AltairFields("altair")
13829
13958
 
13830
13959
  def fields(
13831
13960
  self,
13832
13961
  *subfields: Union[
13833
13962
  TargetEnvironmentGraphQLField,
13963
+ "AltairFields",
13834
13964
  "BasePositionFields",
13835
13965
  "CoordinatesFields",
13836
13966
  "GuideAvailabilityPeriodFields",
@@ -704,7 +704,9 @@ class Mutation:
704
704
  """Re-runs the Archive Duplication Search for an observation, replacing its
705
705
  stored result with what the Gemini Observatory Archive holds now.
706
706
 
707
- Rejected once the observation's proposal has been submitted."""
707
+ Rejected while the proposal is submitted or was not accepted, and for a
708
+ completed observation whatever the proposal status. Allowed again once the
709
+ proposal is accepted, so newly added or changed targets can be checked."""
708
710
  arguments: dict[str, dict[str, Any]] = {
709
711
  "input": {"type": "RefreshArchiveDuplicationInput!", "value": input}
710
712
  }
@@ -798,12 +800,16 @@ class Mutation:
798
800
  def regenerate_proposal_summaries(
799
801
  cls, input: RegenerateProposalSummariesInput
800
802
  ) -> RegenerateProposalSummariesResultFields:
801
- """Regenerate the proposal summary PDFs for a proposal: one per partner it
802
- applies to, each in that partner's style, replacing the existing SUMMARY
803
- attachments once rendered.
804
- Rendering is asynchronous and completion shows up as the program's SUMMARY
805
- attachments.
806
- Requires write access to the program (staff, or membership as PI, CoI or support)."""
803
+ """Regenerate the proposal summary PDFs: one per partner, in that partner's
804
+ style, replacing the SUMMARY attachments once rendered.
805
+
806
+ Rendering is asynchronous, the new attachments and the flip back to IDLE
807
+ arrive in one programEdit event.
808
+
809
+ A request while GENERATING is a no-op, or queues at most one more render if the
810
+ previous one is already rendering. The state stays GENERATING either way.
811
+
812
+ Requires write access to the program (staff, PI, CoI or support)."""
807
813
  arguments: dict[str, dict[str, Any]] = {
808
814
  "input": {"type": "RegenerateProposalSummariesInput!", "value": input}
809
815
  }