# Signal Or Start

**URL:** <https://community.temporal.io/t/signal-or-start/18282>\
**Category:** Server Deployment\
**Tags:** signals\
**Created:** [August 30, 2025, 12:39am UTC](https://community.temporal.io/t/signal-or-start/18282 "2025-08-30T00:39:56Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Andres\_Felipe\_Benavi](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/andres_felipe_benavi/32/3904_2.png) [@Andres\_Felipe\_Benavi](https://community.temporal.io/u/Andres_Felipe_Benavi)\
**Post date:** [August 30, 2025, 12:39am UTC](https://community.temporal.io/t/signal-or-start/18282/1 "2025-08-30T00:39:56Z")

</div>

Hey!

I am checking the “Entity workflow pattern” to control the order of the operation over and entity, as it is in the course the workflow receives an initial list of operations and then if another operation is triggered and the workflow is still running then it gets signaled enqueueing this new one in a workflow queue

This works good, but now i am trying to find a way on the client side to start or signal the workflow, i though the SignalWithStart could help me with this to avoid race conditions, but for my case it is duplicating the operation i am doing, since the entity workflow pattern is enqueuing the initial operation and also the one signaled.

Is it something like StartOrSignal?

Entity workflow pattern reference: [Temporal Courses](https://temporal.talentlms.com/unit/view/id:3550)

---

<div class="post-metadata">

**Author:** ![maxim](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/maxim/32/8_2.png) [@maxim](https://community.temporal.io/u/maxim)\
**Post date:** [August 30, 2025, 3:19pm UTC](https://community.temporal.io/t/signal-or-start/18282/2 "2025-08-30T15:19:09Z")

</div>

The idea is not to perform any operations on workflow start and only do them on signal. Then there is no duplication.

---

<div class="post-metadata">

**Author:** ![Andres\_Felipe\_Benavi](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/andres_felipe_benavi/32/3904_2.png) [@Andres\_Felipe\_Benavi](https://community.temporal.io/u/Andres_Felipe_Benavi)\
**Post date:** [September 1, 2025, 10:17pm UTC](https://community.temporal.io/t/signal-or-start/18282/3 "2025-09-01T22:17:06Z")

</div>

Thanks!

Yes I decided to use the entity workflow pattern and SignalWithStart to start these workflows, explained here: [Temporal Courses](https://temporal.talentlms.com/unit/view/id:3550)

So when the workflow reach out the timeout or temporal suggest to begin a new one, then continueAsNew is executed.

I also read in another thread that Temporal can handle race conditions between SignalWithStart and ContinueAsNew. This addresses my use case perfectly: I need to control the execution order of processes executed over an specific entity to prevent issues like deletion occurring while the creation has not completed
