-
-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update DTOs #13
Update DTOs #13
Conversation
WalkthroughThe recent changes involve significant updates to the Temporal API, enhancing the functionality and clarity of various components. Key alterations include the addition of new fields for tracking request IDs in event attributes and improvements to API versioning for clearer endpoint management. Additionally, updates to internal metadata and method documentation aim to streamline interactions within the system, ensuring better performance and maintainability. Changes
Sequence Diagram(s)sequenceDiagram
participant Client
participant Service
participant Workflow
Client->>Service: Request workflow execution
Service->>Workflow: Start execution with metadata
Workflow->>Service: Send task details
Service->>Client: Respond with task completion
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Outside diff range, codebase verification and nitpick comments (1)
generated/RoadRunner/HTTP/DTO/V1/GPBMetadata/Http.php (1)
Verify the impact of removing
\GPBMetadata\Google\Protobuf\Any::initOnce();
.The
Any
type is used in various parts of the codebase, and its initialization is called in multiple files. Removing the initialization inHttp.php
could affect the handling of dynamic message types. Ensure that this change does not introduce any issues in message serialization or deserialization.
- Files with
Any
type usage:
generated/GPBMetadata/Temporal/Api/Errordetails/V1/Message.php
generated/GPBMetadata/Temporal/Api/Protocol/V1/Message.php
generated/Temporal/Api/Protocol/V1/Message.php
generated/Temporal/Api/Nexus/V1/IncomingServiceSpec.php
generated/Temporal/Api/Errordetails/V1/MultiOperationExecutionFailure/OperationStatus.php
generated/RoadRunner/Common/DTO/V1/Status.php
generated/RoadRunner/Common/DTO/V1/GPBMetadata/GrpcStatus.php
Analysis chain
Line range hint
12-20
:
Verify the impact of removing\GPBMetadata\Google\Protobuf\Any::initOnce();
.Removing the initialization of the
Any
type could affect the handling of dynamic message types if they are used later in the code. Ensure that this change does not introduce any issues in message serialization or deserialization.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the usage of `Any` type in the codebase. # Test: Search for the usage of `Any` type. Expect: Ensure that the removal does not affect the code. rg --type php '\Google\Protobuf\Any'Length of output: 125
Script:
#!/bin/bash # Description: Verify the usage of `Any` type in the codebase. # Test: Search for the usage of `Any` type. Expect: Ensure that the removal does not affect the code. rg --type php 'Google\\Protobuf\\Any'Length of output: 1997
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files selected for processing (17)
- api (1 hunks)
- generated/GPBMetadata/Temporal/Api/History/V1/Message.php (1 hunks)
- generated/GPBMetadata/Temporal/Api/Operatorservice/V1/Service.php (1 hunks)
- generated/GPBMetadata/Temporal/Api/Workflow/V1/Message.php (1 hunks)
- generated/GPBMetadata/Temporal/Api/Workflowservice/V1/Service.php (1 hunks)
- generated/RoadRunner/HTTP/DTO/V1/GPBMetadata/Http.php (1 hunks)
- generated/RoadRunner/Temporal/DTO/V1/GPBMetadata/Temporal.php (1 hunks)
- generated/RoadRunner/Temporal/DTO/V1/Message.php (3 hunks)
- generated/Temporal/Api/Failure/V1/ApplicationFailureInfo.php (4 hunks)
- generated/Temporal/Api/Failure/V1/Failure.php (4 hunks)
- generated/Temporal/Api/History/V1/NexusOperationCanceledEventAttributes.php (3 hunks)
- generated/Temporal/Api/History/V1/NexusOperationCompletedEventAttributes.php (3 hunks)
- generated/Temporal/Api/History/V1/NexusOperationFailedEventAttributes.php (3 hunks)
- generated/Temporal/Api/History/V1/NexusOperationStartedEventAttributes.php (3 hunks)
- generated/Temporal/Api/History/V1/NexusOperationTimedOutEventAttributes.php (3 hunks)
- generated/Temporal/Api/Workflow/V1/PendingNexusOperationInfo.php (3 hunks)
- generated/Temporal/Api/Workflowservice/V1/RespondWorkflowTaskCompletedResponse.php (4 hunks)
Files skipped from review due to trivial changes (4)
- api
- generated/Temporal/Api/Failure/V1/ApplicationFailureInfo.php
- generated/Temporal/Api/Failure/V1/Failure.php
- generated/Temporal/Api/Workflowservice/V1/RespondWorkflowTaskCompletedResponse.php
Additional comments not posted (45)
generated/RoadRunner/Temporal/DTO/V1/GPBMetadata/Temporal.php (1)
Line range hint
12-19
:
LGTM! But verify the usage of new fields inMessage
.The code changes are approved.
However, ensure that all usages of the
Message
class correctly handle the new fields (task_queue
,tick_time
,replay
,continue_as_new_suggested
).generated/GPBMetadata/Temporal/Api/Operatorservice/V1/Service.php (1)
Line range hint
12-19
:
LGTM! But verify the usage of updated API endpoints.The code changes are approved.
However, ensure that all usages of the updated API endpoints correctly handle the new versioning scheme (
/api/v1/
).Verification successful
LGTM! But verify the usage of updated API endpoints.
The code changes are approved. The new versioning scheme (
/api/v1/
) is consistently used across multiple files.
- Ensure that all usages of the updated API endpoints correctly handle the new versioning scheme (
/api/v1/
).Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify the usage of updated API endpoints. # Test: Search for the usage of updated API endpoints. Expect: Ensure that the new versioning scheme is correctly handled. rg --type php '/api/v1/'Length of output: 71525
generated/Temporal/Api/History/V1/NexusOperationCanceledEventAttributes.php (3)
31-36
: Addition ofrequest_id
property looks good.The new property
request_id
is well-documented and follows the existing structure.
48-49
: Update to constructor's PHPDoc looks good.The constructor's PHPDoc comment now correctly includes the new
request_id
property.
119-143
: Addition ofgetRequestId
andsetRequestId
methods looks good.The new methods for accessing and modifying the
request_id
property are well-implemented and follow the existing pattern.generated/Temporal/Api/History/V1/NexusOperationTimedOutEventAttributes.php (3)
31-36
: Addition ofrequest_id
property looks good.The new property
request_id
is well-documented and follows the existing structure.
48-49
: Update to constructor's PHPDoc looks good.The constructor's PHPDoc comment now correctly includes the new
request_id
property.
119-143
: Addition ofgetRequestId
andsetRequestId
methods looks good.The new methods for accessing and modifying the
request_id
property are well-implemented and follow the existing pattern.generated/Temporal/Api/History/V1/NexusOperationFailedEventAttributes.php (3)
31-36
: Addition ofrequest_id
property looks good.The new property
request_id
is well-documented and follows the existing structure.
48-49
: Update to constructor's PHPDoc looks good.The constructor's PHPDoc comment now correctly includes the new
request_id
property.
119-143
: Addition ofgetRequestId
andsetRequestId
methods looks good.The new methods for accessing and modifying the
request_id
property are well-implemented and follow the existing pattern.generated/Temporal/Api/History/V1/NexusOperationStartedEventAttributes.php (4)
35-40
: Addition of therequest_id
property looks good.The
request_id
property is correctly defined with appropriate annotations.
53-54
: Constructor documentation update looks good.The documentation correctly includes the new
request_id
parameter.
116-121
: Addition of thegetRequestId
method looks good.The method is correctly implemented and documented.
127-140
: Addition of thesetRequestId
method looks good.The method is correctly implemented with validation and documented.
generated/Temporal/Api/History/V1/NexusOperationCompletedEventAttributes.php (4)
32-37
: Addition of therequest_id
property looks good.The
request_id
property is correctly defined with appropriate annotations.
50-51
: Constructor documentation update looks good.The documentation correctly includes the new
request_id
parameter.
123-128
: Addition of thegetRequestId
method looks good.The method is correctly implemented and documented.
134-147
: Addition of thesetRequestId
method looks good.The method is correctly implemented with validation and documented.
generated/GPBMetadata/Temporal/Api/Workflow/V1/Message.php (1)
28-28
: Update to theinitOnce
method looks good.The method correctly includes additional generated files in the descriptor pool.
generated/RoadRunner/Temporal/DTO/V1/Message.php (11)
67-72
: Propertytask_queue
addedThe property
task_queue
is correctly declared as a string with a default value of an empty string.
377-401
: Getter and Setter fortask_queue
The getter and setter methods for
task_queue
are correctly implemented with appropriate type checks.
73-78
: Propertytick_time
addedThe property
tick_time
is correctly declared as a string with a default value of an empty string.
403-427
: Getter and Setter fortick_time
The getter and setter methods for
tick_time
are correctly implemented with appropriate type checks.
79-84
: Propertyreplay
addedThe property
replay
is correctly declared as a boolean with a default value of false.
429-453
: Getter and Setter forreplay
The getter and setter methods for
replay
are correctly implemented with appropriate type checks.
85-90
: Propertycontinue_as_new_suggested
addedThe property
continue_as_new_suggested
is correctly declared as a boolean with a default value of false.
455-479
: Getter and Setter forcontinue_as_new_suggested
The getter and setter methods for
continue_as_new_suggested
are correctly implemented with appropriate type checks.
91-97
: Propertyhistory_size
addedThe property
history_size
is correctly declared as an integer with a default value of 0.
481-507
: Getter and Setter forhistory_size
The getter and setter methods for
history_size
are correctly implemented with appropriate type checks.
121-131
: Constructor updatedThe constructor has been correctly updated to include the new properties in its type annotations.
generated/Temporal/Api/Workflow/V1/PendingNexusOperationInfo.php (3)
92-98
: Propertyscheduled_event_id
addedThe property
scheduled_event_id
is correctly declared as an integer with a default value of 0.
517-543
: Getter and Setter forscheduled_event_id
The getter and setter methods for
scheduled_event_id
are correctly implemented with appropriate type checks.
133-135
: Constructor updatedThe constructor has been correctly updated to include the new property in its type annotations.
generated/GPBMetadata/Temporal/Api/Workflowservice/V1/Service.php (10)
21-21
: Endpoint path updated forRegisterNamespace
The endpoint path for
RegisterNamespace
has been correctly updated to include API versioning.
21-21
: Endpoint path updated forDescribeNamespace
The endpoint path for
DescribeNamespace
has been correctly updated to include API versioning.
21-21
: Endpoint path updated forListNamespaces
The endpoint path for
ListNamespaces
has been correctly updated to include API versioning.
21-21
: Endpoint path updated forUpdateNamespace
The endpoint path for
UpdateNamespace
has been correctly updated to include API versioning.
21-21
: Endpoint path updated forDeprecateNamespace
The endpoint path for
DeprecateNamespace
has been correctly updated to include API versioning.
21-21
: Endpoint path updated forStartWorkflowExecution
The endpoint path for
StartWorkflowExecution
has been correctly updated to include API versioning.
21-21
: Endpoint path updated forExecuteMultiOperation
The endpoint path for
ExecuteMultiOperation
has been correctly updated to include API versioning.
21-21
: Endpoint path updated forGetWorkflowExecutionHistory
The endpoint path for
GetWorkflowExecutionHistory
has been correctly updated to include API versioning.
21-21
: Endpoint path updated forPollWorkflowTaskQueue
The endpoint path for
PollWorkflowTaskQueue
has been correctly updated to include API versioning.
21-21
: Endpoint path updated forRespondWorkflowTaskCompleted
The endpoint path for
RespondWorkflowTaskCompleted
has been correctly updated to include API versioning.generated/GPBMetadata/Temporal/Api/History/V1/Message.php (1)
32-32
: LGTM! The proto file path string is correctly formatted.The added proto file path string includes the necessary references to various protocol buffer files.
Sync with RR 2024.2
Summary by CodeRabbit
New Features
request_id
to several event attribute classes to enhance tracking of requests.scheduled_event_id
in thePendingNexusOperationInfo
class for better event correlation.Message
class with additional fields for detailed task management.Documentation
next_retry_delay
behavior inApplicationFailureInfo
class.Bug Fixes
RespondWorkflowTaskCompletedResponse
class.